diff --git a/.changeset/afraid-trees-impress.md b/.changeset/afraid-trees-impress.md
new file mode 100644
index 000000000..09d8513c5
--- /dev/null
+++ b/.changeset/afraid-trees-impress.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(be, payment-gateways): Update Paybilt payout new flow Rebilly/rebilly#18734
diff --git a/.changeset/beige-pans-shout.md b/.changeset/beige-pans-shout.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/beige-pans-shout.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/big-dragons-yell.md b/.changeset/big-dragons-yell.md
new file mode 100644
index 000000000..2a492ec63
--- /dev/null
+++ b/.changeset/big-dragons-yell.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+chore(fe): Bump fast-xml-parser to fix security issues Rebilly/rebilly#18899
diff --git a/.changeset/big-kids-turn.md b/.changeset/big-kids-turn.md
new file mode 100644
index 000000000..32386ac1a
--- /dev/null
+++ b/.changeset/big-kids-turn.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): fix vaulted and alt payment instrument Rebilly/rebilly#15355
diff --git a/.changeset/bright-rules-lay.md b/.changeset/bright-rules-lay.md
new file mode 100644
index 000000000..9c8e5777d
--- /dev/null
+++ b/.changeset/bright-rules-lay.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Change pdf response schema to binary string Rebilly/rebilly#19492
diff --git a/.changeset/brown-doors-grow.md b/.changeset/brown-doors-grow.md
new file mode 100644
index 000000000..2bef857a3
--- /dev/null
+++ b/.changeset/brown-doors-grow.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(be, api-definitions): Require at least 2 amounts and their sum equal to split payout request amount in split operation Rebilly/rebilly#19234
diff --git a/.changeset/calm-plums-kick.md b/.changeset/calm-plums-kick.md
new file mode 100644
index 000000000..bd6089fcb
--- /dev/null
+++ b/.changeset/calm-plums-kick.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be, recomm, api-definitions): Add MaximumOrderAmount coupon restriction Rebilly/rebilly#17757
diff --git a/.changeset/chatty-pets-fix.md b/.changeset/chatty-pets-fix.md
new file mode 100644
index 000000000..2f52c68c4
--- /dev/null
+++ b/.changeset/chatty-pets-fix.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be, recomm, instruments, storefront): Add creating a credit memo on change quote invoice with negative value Rebilly/rebilly#16334
diff --git a/.changeset/cuddly-geckos-wait.md b/.changeset/cuddly-geckos-wait.md
new file mode 100644
index 000000000..7cd968fd6
--- /dev/null
+++ b/.changeset/cuddly-geckos-wait.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(be, api-definitions): update reports to use 400 response Rebilly/rebilly#19748
diff --git a/.changeset/dirty-shoes-attack.md b/.changeset/dirty-shoes-attack.md
new file mode 100644
index 000000000..9828c1850
--- /dev/null
+++ b/.changeset/dirty-shoes-attack.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(be, api-definitions): update reports to use 400 response Rebilly/rebilly#19699
diff --git a/.changeset/eight-onions-decide.md b/.changeset/eight-onions-decide.md
new file mode 100644
index 000000000..80acb6aec
--- /dev/null
+++ b/.changeset/eight-onions-decide.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(docs): Add notificationEmails to Storefront account Rebilly/rebilly#19182
diff --git a/.changeset/eleven-forks-smile.md b/.changeset/eleven-forks-smile.md
new file mode 100644
index 000000000..0af3ceec6
--- /dev/null
+++ b/.changeset/eleven-forks-smile.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+chore(deps): bump es-toolkit from 1.44.0 to 1.45.1 in /website/api-definitions Rebilly/rebilly#19405
diff --git a/.changeset/fair-pumas-wink.md b/.changeset/fair-pumas-wink.md
new file mode 100644
index 000000000..b7f204666
--- /dev/null
+++ b/.changeset/fair-pumas-wink.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be, api-definitions): Add data export functionality for payout requests and allocations Rebilly/rebilly#18168
diff --git a/.changeset/few-tomatoes-reply.md b/.changeset/few-tomatoes-reply.md
new file mode 100644
index 000000000..44a22096f
--- /dev/null
+++ b/.changeset/few-tomatoes-reply.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Fix api defs patch order item Rebilly/rebilly#18565
diff --git a/.changeset/fifty-owls-reflect.md b/.changeset/fifty-owls-reflect.md
new file mode 100644
index 000000000..974d6da37
--- /dev/null
+++ b/.changeset/fifty-owls-reflect.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(docs): Remove TransactionResult and TransactionStatus schemas Rebilly/rebilly#19804
diff --git a/.changeset/five-pets-search.md b/.changeset/five-pets-search.md
new file mode 100644
index 000000000..7261b51cb
--- /dev/null
+++ b/.changeset/five-pets-search.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,metadata,api-definitions): Update NMI API key authentication Rebilly/rebilly#18559
diff --git a/.changeset/flat-vans-attend.md b/.changeset/flat-vans-attend.md
new file mode 100644
index 000000000..d2b07cf80
--- /dev/null
+++ b/.changeset/flat-vans-attend.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+docs(website, api-definitions ): Add more noun phrase guidance for API fields Rebilly/rebilly#18686
diff --git a/.changeset/fluffy-candles-attack.md b/.changeset/fluffy-candles-attack.md
new file mode 100644
index 000000000..febc9f4dd
--- /dev/null
+++ b/.changeset/fluffy-candles-attack.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+chore(deps): bump @redocly/cli from 2.14.4 to 2.14.5 in /website/api-definitions Rebilly/rebilly#18058
diff --git a/.changeset/fluffy-insects-warn.md b/.changeset/fluffy-insects-warn.md
new file mode 100644
index 000000000..c3c1f4904
--- /dev/null
+++ b/.changeset/fluffy-insects-warn.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(be,api-definitions,recomm): Add missing Discover dispute reason codes Rebilly/rebilly#18032
diff --git a/.changeset/forty-cougars-relate.md b/.changeset/forty-cougars-relate.md
new file mode 100644
index 000000000..1c4704071
--- /dev/null
+++ b/.changeset/forty-cougars-relate.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,api-definitions): Introduce cryptocurrency token and store wallet details in reference data Rebilly/rebilly#18600
diff --git a/.changeset/funny-meals-clean.md b/.changeset/funny-meals-clean.md
new file mode 100644
index 000000000..d12e8c8d6
--- /dev/null
+++ b/.changeset/funny-meals-clean.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Add missing required method in schemas Rebilly/rebilly#18742
diff --git a/.changeset/gentle-impalas-promise.md b/.changeset/gentle-impalas-promise.md
new file mode 100644
index 000000000..212feb1dd
--- /dev/null
+++ b/.changeset/gentle-impalas-promise.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Fix orders experimental API fields Rebilly/rebilly#18768
diff --git a/.changeset/gentle-numbers-compete.md b/.changeset/gentle-numbers-compete.md
new file mode 100644
index 000000000..677b76915
--- /dev/null
+++ b/.changeset/gentle-numbers-compete.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be, api-definitions): preview orders enhancements Rebilly/rebilly#17844
diff --git a/.changeset/gentle-seas-tap.md b/.changeset/gentle-seas-tap.md
new file mode 100644
index 000000000..c104238d3
--- /dev/null
+++ b/.changeset/gentle-seas-tap.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-definition, be, payment-gateways): Implement Paybilt payout Rebilly/rebilly#18651
diff --git a/.changeset/gold-papayas-obey.md b/.changeset/gold-papayas-obey.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/gold-papayas-obey.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/green-dolphins-refuse.md b/.changeset/green-dolphins-refuse.md
new file mode 100644
index 000000000..f7a49852b
--- /dev/null
+++ b/.changeset/green-dolphins-refuse.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Add missing isNew field in API-defs Rebilly/rebilly#19712
diff --git a/.changeset/green-spoons-heal.md b/.changeset/green-spoons-heal.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/green-spoons-heal.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/happy-houses-boil.md b/.changeset/happy-houses-boil.md
new file mode 100644
index 000000000..d1c3be73b
--- /dev/null
+++ b/.changeset/happy-houses-boil.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,api-definitions): Create payout request batch using filter parameters Rebilly/rebilly#18767
diff --git a/.changeset/healthy-lions-call.md b/.changeset/healthy-lions-call.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/healthy-lions-call.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/itchy-dingos-wait.md b/.changeset/itchy-dingos-wait.md
new file mode 100644
index 000000000..51a3087e3
--- /dev/null
+++ b/.changeset/itchy-dingos-wait.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(docs): Fix format of URL properties Rebilly/rebilly#19268
diff --git a/.changeset/itchy-windows-joke.md b/.changeset/itchy-windows-joke.md
new file mode 100644
index 000000000..b3159f568
--- /dev/null
+++ b/.changeset/itchy-windows-joke.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-definitions): add transferId to transaction schema Rebilly/rebilly#18563
diff --git a/.changeset/khaki-cups-wash.md b/.changeset/khaki-cups-wash.md
new file mode 100644
index 000000000..33b38c21f
--- /dev/null
+++ b/.changeset/khaki-cups-wash.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be, recomm, api-definitions): Add blocked and blockReason fields to payout request filters and exports Rebilly/rebilly#19217
diff --git a/.changeset/kind-pigs-doubt.md b/.changeset/kind-pigs-doubt.md
new file mode 100644
index 000000000..2b66efcfa
--- /dev/null
+++ b/.changeset/kind-pigs-doubt.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,recomm,api-definitions): Limit payout request batch size Rebilly/rebilly#19287
diff --git a/.changeset/kind-tigers-eat.md b/.changeset/kind-tigers-eat.md
new file mode 100644
index 000000000..e47716480
--- /dev/null
+++ b/.changeset/kind-tigers-eat.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Mark invoiceTimeShift field as deprecated and readOnly Rebilly/rebilly#18532
diff --git a/.changeset/lazy-coins-design.md b/.changeset/lazy-coins-design.md
new file mode 100644
index 000000000..447113784
--- /dev/null
+++ b/.changeset/lazy-coins-design.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Fix startTime field Rebilly/rebilly#19553
diff --git a/.changeset/light-olives-film.md b/.changeset/light-olives-film.md
new file mode 100644
index 000000000..7ae785e9b
--- /dev/null
+++ b/.changeset/light-olives-film.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(docs,be): Add paymentMethod, transactionResult, transactionStatus to allocation response Rebilly/rebilly#19548
diff --git a/.changeset/many-bears-exist.md b/.changeset/many-bears-exist.md
new file mode 100644
index 000000000..b6e8632f2
--- /dev/null
+++ b/.changeset/many-bears-exist.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api,be): Add batchId to payout request allocation Rebilly/rebilly#18380
diff --git a/.changeset/many-bikes-warn.md b/.changeset/many-bikes-warn.md
new file mode 100644
index 000000000..56221cdaa
--- /dev/null
+++ b/.changeset/many-bikes-warn.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(docs,be): Add radarSessionCustomField setting to Stripe adapter Rebilly/rebilly#19758
diff --git a/.changeset/modern-worms-lay.md b/.changeset/modern-worms-lay.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/modern-worms-lay.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/nasty-melons-fold.md b/.changeset/nasty-melons-fold.md
new file mode 100644
index 000000000..5c7db01b2
--- /dev/null
+++ b/.changeset/nasty-melons-fold.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(backend,recomm,api-definitions): Permanently block above and Temporary block above use the independent pool of attributes - remove backward compatibility Rebilly/rebilly#18099
diff --git a/.changeset/new-dancers-learn.md b/.changeset/new-dancers-learn.md
new file mode 100644
index 000000000..376d2bf29
--- /dev/null
+++ b/.changeset/new-dancers-learn.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be, api-definitions): Add legacy property for creation quotes Rebilly/rebilly#18930
diff --git a/.changeset/ninety-colts-dress.md b/.changeset/ninety-colts-dress.md
new file mode 100644
index 000000000..2deaf8c57
--- /dev/null
+++ b/.changeset/ninety-colts-dress.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be, api-definitions): Add AML report endpoint Rebilly/rebilly#18271
diff --git a/.changeset/old-lamps-raise.md b/.changeset/old-lamps-raise.md
new file mode 100644
index 000000000..006314bb8
--- /dev/null
+++ b/.changeset/old-lamps-raise.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+revert(api-definitions): Fix orders experimental API fields Rebilly/rebilly#18789
diff --git a/.changeset/olive-ducks-talk.md b/.changeset/olive-ducks-talk.md
new file mode 100644
index 000000000..8ad19f6d6
--- /dev/null
+++ b/.changeset/olive-ducks-talk.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+chore(website): Fine-tune API descriptions review in Gemini Rebilly/rebilly#18723
diff --git a/.changeset/olive-peas-film.md b/.changeset/olive-peas-film.md
new file mode 100644
index 000000000..8f341ba08
--- /dev/null
+++ b/.changeset/olive-peas-film.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+build(deps): merge passing FE dependabot PRs Rebilly/rebilly#18118
diff --git a/.changeset/orange-zebras-carry.md b/.changeset/orange-zebras-carry.md
new file mode 100644
index 000000000..0759dc886
--- /dev/null
+++ b/.changeset/orange-zebras-carry.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+chore(deps): merge passing FE dependabot PRs Rebilly/rebilly#18528
diff --git a/.changeset/plenty-buckets-retire.md b/.changeset/plenty-buckets-retire.md
new file mode 100644
index 000000000..42b3aa002
--- /dev/null
+++ b/.changeset/plenty-buckets-retire.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be): Implement AmlProvenance Rebilly/rebilly#17982
diff --git a/.changeset/plenty-lemons-return.md b/.changeset/plenty-lemons-return.md
new file mode 100644
index 000000000..dd7fd2027
--- /dev/null
+++ b/.changeset/plenty-lemons-return.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+build(deps): merge passing FE dependabot PRs Rebilly/rebilly#18191
diff --git a/.changeset/polite-cobras-prove.md b/.changeset/polite-cobras-prove.md
new file mode 100644
index 000000000..beeb4ad29
--- /dev/null
+++ b/.changeset/polite-cobras-prove.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-defs): Add payout request batch operations Rebilly/rebilly#17873
diff --git a/.changeset/popular-bears-fix.md b/.changeset/popular-bears-fix.md
new file mode 100644
index 000000000..ba11a9264
--- /dev/null
+++ b/.changeset/popular-bears-fix.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Fix orders experimental API fields Rebilly/rebilly#18883
diff --git a/.changeset/pretty-insects-hug.md b/.changeset/pretty-insects-hug.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/pretty-insects-hug.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/proud-cups-explode.md b/.changeset/proud-cups-explode.md
new file mode 100644
index 000000000..91377c59e
--- /dev/null
+++ b/.changeset/proud-cups-explode.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-definitions): Add block reason fields to payout request related schema and body Rebilly/rebilly#18898
diff --git a/.changeset/proud-kings-vanish.md b/.changeset/proud-kings-vanish.md
new file mode 100644
index 000000000..85aa08a9c
--- /dev/null
+++ b/.changeset/proud-kings-vanish.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(docs): Fix BankAccountCreatePlain discriminator Rebilly/rebilly#19271
diff --git a/.changeset/purple-fishes-laugh.md b/.changeset/purple-fishes-laugh.md
new file mode 100644
index 000000000..9370e5c79
--- /dev/null
+++ b/.changeset/purple-fishes-laugh.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+chore(deps): bump @redocly/cli from 2.20.4 to 2.21.1 in /website/api-definitions Rebilly/rebilly#19619
diff --git a/.changeset/purple-jobs-remember.md b/.changeset/purple-jobs-remember.md
new file mode 100644
index 000000000..58ca776bc
--- /dev/null
+++ b/.changeset/purple-jobs-remember.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be): Add currency exchange rate to Storefront DCC response Rebilly/rebilly#19056
diff --git a/.changeset/purple-ravens-bake.md b/.changeset/purple-ravens-bake.md
new file mode 100644
index 000000000..dfd279507
--- /dev/null
+++ b/.changeset/purple-ravens-bake.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,api-definitions): Add payout request batches data table Rebilly/rebilly#18278
diff --git a/.changeset/quick-glasses-mix.md b/.changeset/quick-glasses-mix.md
new file mode 100644
index 000000000..07150897a
--- /dev/null
+++ b/.changeset/quick-glasses-mix.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,api-definitions): Add payout request allocations data table Rebilly/rebilly#18273
diff --git a/.changeset/quiet-baboons-press.md b/.changeset/quiet-baboons-press.md
new file mode 100644
index 000000000..edbd6d7b2
--- /dev/null
+++ b/.changeset/quiet-baboons-press.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be): Include gatewayPayoutInstruction in payout request payment instruments data Rebilly/rebilly#18507
diff --git a/.changeset/rare-maps-cry.md b/.changeset/rare-maps-cry.md
new file mode 100644
index 000000000..94e5fc99e
--- /dev/null
+++ b/.changeset/rare-maps-cry.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(backend): implements option to add additional emails to customers Rebilly/rebilly#18543
diff --git a/.changeset/rotten-roses-report.md b/.changeset/rotten-roses-report.md
new file mode 100644
index 000000000..73e667b43
--- /dev/null
+++ b/.changeset/rotten-roses-report.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(docs,be): Add optional step to verify if customer account exists before Skrill payout Rebilly/rebilly#19844
diff --git a/.changeset/selfish-dolls-punch.md b/.changeset/selfish-dolls-punch.md
new file mode 100644
index 000000000..8bb569d4e
--- /dev/null
+++ b/.changeset/selfish-dolls-punch.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be, api-definitions): Add startTime to creation quotes Rebilly/rebilly#18022
diff --git a/.changeset/selfish-forks-shave.md b/.changeset/selfish-forks-shave.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/selfish-forks-shave.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/shaggy-plums-travel.md b/.changeset/shaggy-plums-travel.md
new file mode 100644
index 000000000..74f66e522
--- /dev/null
+++ b/.changeset/shaggy-plums-travel.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Update Transaction transferId description and remove transferId from storefrontTransaction Rebilly/rebilly#19153
diff --git a/.changeset/shaggy-squids-sell.md b/.changeset/shaggy-squids-sell.md
new file mode 100644
index 000000000..c1ce3aa49
--- /dev/null
+++ b/.changeset/shaggy-squids-sell.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+docs(api-definitions): Remove Trigger from summaries Rebilly/rebilly#18212
diff --git a/.changeset/silent-moose-pretend.md b/.changeset/silent-moose-pretend.md
new file mode 100644
index 000000000..5ed187b4e
--- /dev/null
+++ b/.changeset/silent-moose-pretend.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+build(deps): merge passing FE dependabot PRs Rebilly/rebilly#18806
diff --git a/.changeset/six-hotels-look.md b/.changeset/six-hotels-look.md
new file mode 100644
index 000000000..dec823861
--- /dev/null
+++ b/.changeset/six-hotels-look.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+refactor(be,api-definitions): Refactor remaining reports to Symfony validation Rebilly/rebilly#19252
diff --git a/.changeset/sixty-timers-sneeze.md b/.changeset/sixty-timers-sneeze.md
new file mode 100644
index 000000000..f04fdfa0e
--- /dev/null
+++ b/.changeset/sixty-timers-sneeze.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(be, payment-gateways): Add payout password for VegaWallet Rebilly/rebilly#19833
diff --git a/.changeset/slimy-dryers-share.md b/.changeset/slimy-dryers-share.md
new file mode 100644
index 000000000..232a4a851
--- /dev/null
+++ b/.changeset/slimy-dryers-share.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-definition, be, payment-gateways): Implement Viva gateway adapter Rebilly/rebilly#19329
diff --git a/.changeset/slimy-items-repair.md b/.changeset/slimy-items-repair.md
new file mode 100644
index 000000000..86d14ad39
--- /dev/null
+++ b/.changeset/slimy-items-repair.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be): Add noMatchReason to AmlCheck Rebilly/rebilly#18727
diff --git a/.changeset/slow-pigs-sneeze.md b/.changeset/slow-pigs-sneeze.md
new file mode 100644
index 000000000..65a5ac891
--- /dev/null
+++ b/.changeset/slow-pigs-sneeze.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,recomm,api-definitions): remove redundant payoutRequestIds field from PayoutRequestBatch response Rebilly/rebilly#19393
diff --git a/.changeset/soft-spiders-deny.md b/.changeset/soft-spiders-deny.md
new file mode 100644
index 000000000..e4adf17b1
--- /dev/null
+++ b/.changeset/soft-spiders-deny.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-definitions): Add AML checks report path Rebilly/rebilly#18613
diff --git a/.changeset/sour-bats-approve.md b/.changeset/sour-bats-approve.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/sour-bats-approve.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/spotty-badgers-cover.md b/.changeset/spotty-badgers-cover.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/spotty-badgers-cover.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/stale-cycles-admire.md b/.changeset/stale-cycles-admire.md
new file mode 100644
index 000000000..53d7f5260
--- /dev/null
+++ b/.changeset/stale-cycles-admire.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+chore(deps): bump @redocly/cli from 2.18.1 to 2.20.4 in /website/api-definitions Rebilly/rebilly#19406
diff --git a/.changeset/strange-seahorses-watch.md b/.changeset/strange-seahorses-watch.md
new file mode 100644
index 000000000..117c4c3e7
--- /dev/null
+++ b/.changeset/strange-seahorses-watch.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+docs: Add other missing KYC tile type Rebilly/rebilly#18368
diff --git a/.changeset/strong-penguins-draw.md b/.changeset/strong-penguins-draw.md
new file mode 100644
index 000000000..7bbc357d3
--- /dev/null
+++ b/.changeset/strong-penguins-draw.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+revert(backend): Permanently block above and Temporary block above use the independent pool of attributes - remove backward compatibility Rebilly/rebilly#17885
diff --git a/.changeset/strong-poets-count.md b/.changeset/strong-poets-count.md
new file mode 100644
index 000000000..b929b8ef9
--- /dev/null
+++ b/.changeset/strong-poets-count.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(backend,api-definitions): expose tax number updates to storefront Rebilly/rebilly#18625
diff --git a/.changeset/stupid-doors-tell.md b/.changeset/stupid-doors-tell.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/stupid-doors-tell.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/tall-nails-study.md b/.changeset/tall-nails-study.md
new file mode 100644
index 000000000..3fbb825b1
--- /dev/null
+++ b/.changeset/tall-nails-study.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(be, website): Restrict invoice address change Rebilly/rebilly#18836
diff --git a/.changeset/tame-files-smoke.md b/.changeset/tame-files-smoke.md
new file mode 100644
index 000000000..a0d0c87ea
--- /dev/null
+++ b/.changeset/tame-files-smoke.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+chore(builds): Bump fast-xml-parser to resolve security issues Rebilly/rebilly#18581
diff --git a/.changeset/tender-bobcats-joke.md b/.changeset/tender-bobcats-joke.md
new file mode 100644
index 000000000..06b55edff
--- /dev/null
+++ b/.changeset/tender-bobcats-joke.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(api-definitions): Fix api defs plan id required Rebilly/rebilly#18580
diff --git a/.changeset/tender-comics-teach.md b/.changeset/tender-comics-teach.md
new file mode 100644
index 000000000..81d74ee65
--- /dev/null
+++ b/.changeset/tender-comics-teach.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,api-definitions): Implement Storefront endpoints for transactions DCC offer Rebilly/rebilly#18749
diff --git a/.changeset/thin-pianos-enjoy.md b/.changeset/thin-pianos-enjoy.md
new file mode 100644
index 000000000..b28708529
--- /dev/null
+++ b/.changeset/thin-pianos-enjoy.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(be, api-definitions): refactor kyc acceptance report to use 400 response Rebilly/rebilly#19445
diff --git a/.changeset/three-carpets-relate.md b/.changeset/three-carpets-relate.md
new file mode 100644
index 000000000..34990f403
--- /dev/null
+++ b/.changeset/three-carpets-relate.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(backend): KYC - detect photocopies Rebilly/rebilly#18256
diff --git a/.changeset/tidy-kids-camp.md b/.changeset/tidy-kids-camp.md
new file mode 100644
index 000000000..7be572a02
--- /dev/null
+++ b/.changeset/tidy-kids-camp.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,api-definitions): remove filter field from batch preview response Rebilly/rebilly#19422
diff --git a/.changeset/tidy-maps-report.md b/.changeset/tidy-maps-report.md
new file mode 100644
index 000000000..abdbba75e
--- /dev/null
+++ b/.changeset/tidy-maps-report.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-definitions, docs): Add split and merge operations to payout request resource Rebilly/rebilly#17834
diff --git a/.changeset/tiny-timers-shake.md b/.changeset/tiny-timers-shake.md
new file mode 100644
index 000000000..e96d76eb2
--- /dev/null
+++ b/.changeset/tiny-timers-shake.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be): Add payout request allocation status declined and queued Rebilly/rebilly#19064
diff --git a/.changeset/tricky-games-exercise.md b/.changeset/tricky-games-exercise.md
new file mode 100644
index 000000000..b21a8285d
--- /dev/null
+++ b/.changeset/tricky-games-exercise.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-definitions): Add blockReason field to PayoutRequestV2 schema Rebilly/rebilly#19061
diff --git a/.changeset/two-days-doubt.md b/.changeset/two-days-doubt.md
new file mode 100644
index 000000000..0d56eb95b
--- /dev/null
+++ b/.changeset/two-days-doubt.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-definitions): Add new metrics for AML check histogram report Rebilly/rebilly#18012
diff --git a/.changeset/violet-cheetahs-taste.md b/.changeset/violet-cheetahs-taste.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/violet-cheetahs-taste.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/violet-years-cross.md b/.changeset/violet-years-cross.md
new file mode 100644
index 000000000..53722b540
--- /dev/null
+++ b/.changeset/violet-years-cross.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+fix(backend): Permanently block above and Temporary block above use the independent pool of attributes - remove backward compatibility Rebilly/rebilly#17885
diff --git a/.changeset/warm-suns-tell.md b/.changeset/warm-suns-tell.md
new file mode 100644
index 000000000..2b4db739e
--- /dev/null
+++ b/.changeset/warm-suns-tell.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be,api-definitions): Calculate payout request batch totals Rebilly/rebilly#19338
diff --git a/.changeset/wet-scissors-drive.md b/.changeset/wet-scissors-drive.md
new file mode 100644
index 000000000..a29f9362d
--- /dev/null
+++ b/.changeset/wet-scissors-drive.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be): Add productOptions to PatchOrderItem Rebilly/rebilly#18533
diff --git a/.changeset/wise-chefs-argue.md b/.changeset/wise-chefs-argue.md
new file mode 100644
index 000000000..ea6bb6cd4
--- /dev/null
+++ b/.changeset/wise-chefs-argue.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(api-definitions): Add Credit memo quotation status Rebilly/rebilly#17168
diff --git a/.changeset/witty-waves-wait.md b/.changeset/witty-waves-wait.md
new file mode 100644
index 000000000..4d0998a5a
--- /dev/null
+++ b/.changeset/witty-waves-wait.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+SDK Generator updated
diff --git a/.changeset/witty-zebras-drop.md b/.changeset/witty-zebras-drop.md
new file mode 100644
index 000000000..b53e79202
--- /dev/null
+++ b/.changeset/witty-zebras-drop.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+build(deps): merge passing FE dependabot PRs Rebilly/rebilly#18610
diff --git a/.changeset/yellow-foxes-hope.md b/.changeset/yellow-foxes-hope.md
new file mode 100644
index 000000000..9922ec92e
--- /dev/null
+++ b/.changeset/yellow-foxes-hope.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+docs: Add missing KYC tile type Rebilly/rebilly#18362
diff --git a/.changeset/young-cycles-enjoy.md b/.changeset/young-cycles-enjoy.md
new file mode 100644
index 000000000..f91653c4d
--- /dev/null
+++ b/.changeset/young-cycles-enjoy.md
@@ -0,0 +1,5 @@
+---
+"@rebilly/client-php": patch
+---
+
+feat(be, payment-gateways): Add gateway account setting to Viva Rebilly/rebilly#19762
diff --git a/composer.json b/composer.json
index 783902b31..42a864bcf 100644
--- a/composer.json
+++ b/composer.json
@@ -2,20 +2,7 @@
"name": "rebilly/client-php",
"description": "Rebilly PHP Client",
"type": "library",
- "keywords": [
- "payment processing",
- "api",
- "transactions",
- "subscriptions"
- ],
- "homepage": "http://rebilly.com/",
"license": "MIT",
- "authors": [
- {
- "name": "Rebilly",
- "homepage": "https://github.com/rebilly"
- }
- ],
"minimum-stability": "stable",
"require": {
"php": "^8.0",
@@ -52,6 +39,19 @@
"cs-changes": "composer cs -- \"$(composer diff-files HEAD)\"",
"cs-fix-changes": "composer cs-fix -- \"$(composer diff-files HEAD)\""
},
+ "keywords": [
+ "payment processing",
+ "api",
+ "transactions",
+ "subscriptions"
+ ],
+ "homepage": "http://rebilly.com/",
+ "authors": [
+ {
+ "name": "Rebilly",
+ "homepage": "https://github.com/rebilly"
+ }
+ ],
"extra": {
"branch-alias": {
"dev-main": "3.x-dev",
diff --git a/psalm.xml b/psalm.xml
index f69515f45..654b71a81 100644
--- a/psalm.xml
+++ b/psalm.xml
@@ -24,6 +24,7 @@
+
diff --git a/src/Api/AllowlistsApi.php b/src/Api/AllowlistsApi.php
index 175c185a7..9c3f92311 100644
--- a/src/Api/AllowlistsApi.php
+++ b/src/Api/AllowlistsApi.php
@@ -55,7 +55,7 @@ public function getAllowlist(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Allowlist::from($data);
+ return Allowlist::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -82,10 +82,13 @@ public function getAllowlistCollection(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Allowlist => Allowlist::from($item), $data),
+ array_map(fn (array $item): Allowlist => Allowlist::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -122,6 +125,6 @@ public function storeAllowlist(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Allowlist::from($data);
+ return Allowlist::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/AmlChecksApi.php b/src/Api/AmlChecksApi.php
index b70991b59..30de24b76 100644
--- a/src/Api/AmlChecksApi.php
+++ b/src/Api/AmlChecksApi.php
@@ -43,7 +43,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AmlCheck::from($data);
+ return AmlCheck::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -72,10 +72,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): AmlCheck => AmlCheck::from($item), $data),
+ array_map(fn (array $item): AmlCheck => AmlCheck::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -119,7 +122,7 @@ public function review(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AmlCheck::from($data);
+ return AmlCheck::from($data, ['headers' => $response->getHeaders()]);
}
public function startReview(
@@ -137,7 +140,7 @@ public function startReview(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AmlCheck::from($data);
+ return AmlCheck::from($data, ['headers' => $response->getHeaders()]);
}
public function stopReview(
@@ -155,6 +158,6 @@ public function stopReview(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AmlCheck::from($data);
+ return AmlCheck::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/AmlSettingsApi.php b/src/Api/AmlSettingsApi.php
index 7ac2c2a6a..8233e8b81 100644
--- a/src/Api/AmlSettingsApi.php
+++ b/src/Api/AmlSettingsApi.php
@@ -35,7 +35,7 @@ public function getAmlSettings(): AmlSettings
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AmlSettings::from($data);
+ return AmlSettings::from($data, ['headers' => $response->getHeaders()]);
}
public function putAmlSettings(
@@ -49,6 +49,6 @@ public function putAmlSettings(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AmlSettings::from($data);
+ return AmlSettings::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/ApiKeysApi.php b/src/Api/ApiKeysApi.php
index 502215c6a..a66872438 100644
--- a/src/Api/ApiKeysApi.php
+++ b/src/Api/ApiKeysApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ApiKey::from($data);
+ return ApiKey::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ApiKey::from($data);
+ return ApiKey::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -96,10 +96,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): ApiKey => ApiKey::from($item), $data),
+ array_map(fn (array $item): ApiKey => ApiKey::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -141,6 +144,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ApiKey::from($data);
+ return ApiKey::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/ApplicationInstancesApi.php b/src/Api/ApplicationInstancesApi.php
index 538f93390..ca2dc20d1 100644
--- a/src/Api/ApplicationInstancesApi.php
+++ b/src/Api/ApplicationInstancesApi.php
@@ -54,7 +54,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ApplicationInstance::from($data);
+ return ApplicationInstance::from($data, ['headers' => $response->getHeaders()]);
}
public function getConfiguration(
@@ -72,7 +72,7 @@ public function getConfiguration(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ApplicationInstanceConfiguration::from($data);
+ return ApplicationInstanceConfiguration::from($data, ['headers' => $response->getHeaders()]);
}
public function upsert(
@@ -91,7 +91,7 @@ public function upsert(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ApplicationInstance::from($data);
+ return ApplicationInstance::from($data, ['headers' => $response->getHeaders()]);
}
public function upsertConfiguration(
@@ -110,6 +110,6 @@ public function upsertConfiguration(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ApplicationInstanceConfiguration::from($data);
+ return ApplicationInstanceConfiguration::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/ApplicationsApi.php b/src/Api/ApplicationsApi.php
index 707268a6a..ea9986f20 100644
--- a/src/Api/ApplicationsApi.php
+++ b/src/Api/ApplicationsApi.php
@@ -40,7 +40,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Application::from($data);
+ return Application::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -58,7 +58,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return UserApplication::from($data);
+ return UserApplication::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -91,10 +91,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): UserApplication => UserApplication::from($item), $data),
+ array_map(fn (array $item): UserApplication => UserApplication::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -143,7 +146,7 @@ public function getInstance(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OwnerApplicationInstance::from($data);
+ return OwnerApplicationInstance::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -171,10 +174,13 @@ public function getInstances(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): OwnerApplicationInstance => OwnerApplicationInstance::from($item), $data),
+ array_map(fn (array $item): OwnerApplicationInstance => OwnerApplicationInstance::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/BalanceTransactionsApi.php b/src/Api/BalanceTransactionsApi.php
index edeaaa442..783089a14 100644
--- a/src/Api/BalanceTransactionsApi.php
+++ b/src/Api/BalanceTransactionsApi.php
@@ -43,7 +43,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return BalanceTransactionFactory::from($data);
+ return BalanceTransactionFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -70,10 +70,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): BalanceTransaction => BalanceTransactionFactory::from($item), $data),
+ array_map(fn (array $item): BalanceTransaction => BalanceTransactionFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/BillingPortalsApi.php b/src/Api/BillingPortalsApi.php
index fc799c01d..5f430684f 100644
--- a/src/Api/BillingPortalsApi.php
+++ b/src/Api/BillingPortalsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return BillingPortal::from($data);
+ return BillingPortal::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return BillingPortal::from($data);
+ return BillingPortal::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): BillingPortal => BillingPortal::from($item), $data),
+ array_map(fn (array $item): BillingPortal => BillingPortal::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -145,6 +148,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return BillingPortal::from($data);
+ return BillingPortal::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/BlocklistsApi.php b/src/Api/BlocklistsApi.php
index 759887e12..4edcc29ff 100644
--- a/src/Api/BlocklistsApi.php
+++ b/src/Api/BlocklistsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Blocklist::from($data);
+ return Blocklist::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Blocklist::from($data);
+ return Blocklist::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Blocklist => Blocklist::from($item), $data),
+ array_map(fn (array $item): Blocklist => Blocklist::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -145,6 +148,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Blocklist::from($data);
+ return Blocklist::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/BroadcastMessagesApi.php b/src/Api/BroadcastMessagesApi.php
index 3c8edcc95..a230fb7f2 100644
--- a/src/Api/BroadcastMessagesApi.php
+++ b/src/Api/BroadcastMessagesApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return BroadcastMessage::from($data);
+ return BroadcastMessage::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return BroadcastMessage::from($data);
+ return BroadcastMessage::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -96,10 +96,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): BroadcastMessage => BroadcastMessage::from($item), $data),
+ array_map(fn (array $item): BroadcastMessage => BroadcastMessage::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -141,6 +144,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return BroadcastMessage::from($data);
+ return BroadcastMessage::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/CashiersApi.php b/src/Api/CashiersApi.php
index 9684b545d..60b60aa74 100644
--- a/src/Api/CashiersApi.php
+++ b/src/Api/CashiersApi.php
@@ -37,7 +37,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Cashier::from($data);
+ return Cashier::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -55,6 +55,6 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Cashier::from($data);
+ return Cashier::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/CheckoutFormsApi.php b/src/Api/CheckoutFormsApi.php
index ab105cd9b..fbca6c454 100644
--- a/src/Api/CheckoutFormsApi.php
+++ b/src/Api/CheckoutFormsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CheckoutForm::from($data);
+ return CheckoutForm::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CheckoutForm::from($data);
+ return CheckoutForm::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): CheckoutForm => CheckoutForm::from($item), $data),
+ array_map(fn (array $item): CheckoutForm => CheckoutForm::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -145,6 +148,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CheckoutForm::from($data);
+ return CheckoutForm::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/CouponsApi.php b/src/Api/CouponsApi.php
index 67b9ef9aa..6a7b00a48 100644
--- a/src/Api/CouponsApi.php
+++ b/src/Api/CouponsApi.php
@@ -53,7 +53,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Coupon::from($data);
+ return Coupon::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -71,7 +71,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Coupon::from($data);
+ return Coupon::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -100,10 +100,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Coupon => Coupon::from($item), $data),
+ array_map(fn (array $item): Coupon => Coupon::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -157,10 +160,13 @@ public function getAllRedemptions(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): CouponRedemption => CouponRedemption::from($item), $data),
+ array_map(fn (array $item): CouponRedemption => CouponRedemption::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -203,7 +209,7 @@ public function getRedemption(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CouponRedemption::from($data);
+ return CouponRedemption::from($data, ['headers' => $response->getHeaders()]);
}
public function redeem(
@@ -217,7 +223,7 @@ public function redeem(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CouponRedemption::from($data);
+ return CouponRedemption::from($data, ['headers' => $response->getHeaders()]);
}
public function setExpiration(
@@ -236,7 +242,7 @@ public function setExpiration(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Coupon::from($data);
+ return Coupon::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -255,6 +261,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Coupon::from($data);
+ return Coupon::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/CreditMemosApi.php b/src/Api/CreditMemosApi.php
index 3d3b9bad5..c6d8b33ee 100644
--- a/src/Api/CreditMemosApi.php
+++ b/src/Api/CreditMemosApi.php
@@ -40,7 +40,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CreditMemo::from($data);
+ return CreditMemo::from($data, ['headers' => $response->getHeaders()]);
}
public function createTimelineComment(
@@ -59,7 +59,7 @@ public function createTimelineComment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CreditMemoTimeline::from($data);
+ return CreditMemoTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function deleteTimelineMessage(
@@ -92,7 +92,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CreditMemo::from($data);
+ return CreditMemo::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -123,10 +123,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): CreditMemo => CreditMemo::from($item), $data),
+ array_map(fn (array $item): CreditMemo => CreditMemo::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -187,10 +190,13 @@ public function getAllTimelineMessages(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): CreditMemoTimeline => CreditMemoTimeline::from($item), $data),
+ array_map(fn (array $item): CreditMemoTimeline => CreditMemoTimeline::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -237,7 +243,7 @@ public function getTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CreditMemoTimeline::from($data);
+ return CreditMemoTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function patch(
@@ -256,7 +262,7 @@ public function patch(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CreditMemo::from($data);
+ return CreditMemo::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -275,7 +281,7 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CreditMemo::from($data);
+ return CreditMemo::from($data, ['headers' => $response->getHeaders()]);
}
public function void(
@@ -293,6 +299,6 @@ public function void(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CreditMemo::from($data);
+ return CreditMemo::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/CustomDomainsApi.php b/src/Api/CustomDomainsApi.php
index 28d6ffdaa..da6234bc7 100644
--- a/src/Api/CustomDomainsApi.php
+++ b/src/Api/CustomDomainsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomDomain::from($data);
+ return CustomDomain::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomDomain::from($data);
+ return CustomDomain::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): CustomDomain => CustomDomain::from($item), $data),
+ array_map(fn (array $item): CustomDomain => CustomDomain::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/CustomFieldsApi.php b/src/Api/CustomFieldsApi.php
index 7e2ced964..4cec14926 100644
--- a/src/Api/CustomFieldsApi.php
+++ b/src/Api/CustomFieldsApi.php
@@ -46,7 +46,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomFieldFactory::from($data);
+ return CustomFieldFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -66,7 +66,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomFieldFactory::from($data);
+ return CustomFieldFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -94,10 +94,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): CustomField => CustomFieldFactory::from($item), $data),
+ array_map(fn (array $item): CustomField => CustomFieldFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/CustomerAuthenticationApi.php b/src/Api/CustomerAuthenticationApi.php
index b0d36d445..5b13ce11e 100644
--- a/src/Api/CustomerAuthenticationApi.php
+++ b/src/Api/CustomerAuthenticationApi.php
@@ -43,7 +43,7 @@ public function createCredential(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomerCredential::from($data);
+ return CustomerCredential::from($data, ['headers' => $response->getHeaders()]);
}
public function createResetPasswordToken(
@@ -57,7 +57,7 @@ public function createResetPasswordToken(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ResetPasswordToken::from($data);
+ return ResetPasswordToken::from($data, ['headers' => $response->getHeaders()]);
}
public function deleteCredential(
@@ -102,7 +102,7 @@ public function exchangeToken(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomerJWT::from($data);
+ return CustomerJWT::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -125,10 +125,13 @@ public function getAllAuthTokens(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): AuthenticationTokenResponse => AuthenticationTokenResponse::from($item), $data),
+ array_map(fn (array $item): AuthenticationTokenResponse => AuthenticationTokenResponse::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -170,10 +173,13 @@ public function getAllCredentials(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): CustomerCredential => CustomerCredential::from($item), $data),
+ array_map(fn (array $item): CustomerCredential => CustomerCredential::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -215,10 +221,13 @@ public function getAllResetPasswordTokens(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): ResetPasswordToken => ResetPasswordToken::from($item), $data),
+ array_map(fn (array $item): ResetPasswordToken => ResetPasswordToken::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -250,7 +259,7 @@ public function getAuthOptions(): AuthenticationOptions
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AuthenticationOptions::from($data);
+ return AuthenticationOptions::from($data, ['headers' => $response->getHeaders()]);
}
public function getCredential(
@@ -268,7 +277,7 @@ public function getCredential(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomerCredential::from($data);
+ return CustomerCredential::from($data, ['headers' => $response->getHeaders()]);
}
public function getResetPasswordToken(
@@ -286,7 +295,7 @@ public function getResetPasswordToken(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ResetPasswordToken::from($data);
+ return ResetPasswordToken::from($data, ['headers' => $response->getHeaders()]);
}
public function login(
@@ -300,7 +309,7 @@ public function login(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AuthenticationTokenResponse::from($data);
+ return AuthenticationTokenResponse::from($data, ['headers' => $response->getHeaders()]);
}
public function logout(
@@ -327,7 +336,7 @@ public function updateAuthOptions(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AuthenticationOptions::from($data);
+ return AuthenticationOptions::from($data, ['headers' => $response->getHeaders()]);
}
public function updateCredential(
@@ -346,7 +355,7 @@ public function updateCredential(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomerCredential::from($data);
+ return CustomerCredential::from($data, ['headers' => $response->getHeaders()]);
}
public function verify(
@@ -364,6 +373,6 @@ public function verify(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return AuthenticationTokenResponse::from($data);
+ return AuthenticationTokenResponse::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/CustomersApi.php b/src/Api/CustomersApi.php
index 923593de9..0e7be575e 100644
--- a/src/Api/CustomersApi.php
+++ b/src/Api/CustomersApi.php
@@ -44,7 +44,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Customer::from($data);
+ return Customer::from($data, ['headers' => $response->getHeaders()]);
}
public function createLeadSource(
@@ -63,7 +63,7 @@ public function createLeadSource(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return LeadSource::from($data);
+ return LeadSource::from($data, ['headers' => $response->getHeaders()]);
}
public function createTimelineComment(
@@ -82,7 +82,7 @@ public function createTimelineComment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomerTimeline::from($data);
+ return CustomerTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function deleteLeadSource(
@@ -134,7 +134,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Customer::from($data);
+ return Customer::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -167,10 +167,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Customer => Customer::from($item), $data),
+ array_map(fn (array $item): Customer => Customer::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -227,10 +230,13 @@ public function getAllEddSearchResults(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): EddSearchResult => EddSearchResult::from($item), $data),
+ array_map(fn (array $item): EddSearchResult => EddSearchResult::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -285,10 +291,13 @@ public function getAllTimelineMessages(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): CustomerTimeline => CustomerTimeline::from($item), $data),
+ array_map(fn (array $item): CustomerTimeline => CustomerTimeline::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -333,7 +342,7 @@ public function getCustomerEddScore(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Edd::from($data);
+ return Edd::from($data, ['headers' => $response->getHeaders()]);
}
public function getCustomerLifetimeSummaryMetrics(
@@ -351,7 +360,7 @@ public function getCustomerLifetimeSummaryMetrics(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomerInformation::from($data);
+ return CustomerInformation::from($data, ['headers' => $response->getHeaders()]);
}
public function getEddSearchResult(
@@ -371,7 +380,7 @@ public function getEddSearchResult(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EddSearchResult::from($data);
+ return EddSearchResult::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -405,10 +414,13 @@ public function getEddTimelineCollection(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): EddTimeline => EddTimeline::from($item), $data),
+ array_map(fn (array $item): EddTimeline => EddTimeline::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -455,7 +467,7 @@ public function getEddTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EddTimeline::from($data);
+ return EddTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function getLeadSource(
@@ -473,7 +485,7 @@ public function getLeadSource(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return LeadSource::from($data);
+ return LeadSource::from($data, ['headers' => $response->getHeaders()]);
}
public function getTimelineMessage(
@@ -493,7 +505,7 @@ public function getTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CustomerTimeline::from($data);
+ return CustomerTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function merge(
@@ -529,6 +541,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Customer::from($data);
+ return Customer::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/DataExportsApi.php b/src/Api/DataExportsApi.php
index 557068749..9828a658b 100644
--- a/src/Api/DataExportsApi.php
+++ b/src/Api/DataExportsApi.php
@@ -60,7 +60,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DataExportFactory::from($data);
+ return DataExportFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -93,10 +93,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): DataExport => DataExportFactory::from($item), $data),
+ array_map(fn (array $item): DataExport => DataExportFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -143,7 +146,7 @@ public function queue(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DataExportFactory::from($data);
+ return DataExportFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -166,6 +169,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DataExportFactory::from($data);
+ return DataExportFactory::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/DepositCustomPropertySetsApi.php b/src/Api/DepositCustomPropertySetsApi.php
index 71cf67100..49d0219a6 100644
--- a/src/Api/DepositCustomPropertySetsApi.php
+++ b/src/Api/DepositCustomPropertySetsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DepositCustomPropertySet::from($data);
+ return DepositCustomPropertySet::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DepositCustomPropertySet::from($data);
+ return DepositCustomPropertySet::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -96,10 +96,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): DepositCustomPropertySet => DepositCustomPropertySet::from($item), $data),
+ array_map(fn (array $item): DepositCustomPropertySet => DepositCustomPropertySet::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -141,6 +144,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DepositCustomPropertySet::from($data);
+ return DepositCustomPropertySet::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/DepositRequestsApi.php b/src/Api/DepositRequestsApi.php
index 32cc96271..3437eb51c 100644
--- a/src/Api/DepositRequestsApi.php
+++ b/src/Api/DepositRequestsApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DepositRequest::from($data);
+ return DepositRequest::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -61,7 +61,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DepositRequest::from($data);
+ return DepositRequest::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -90,10 +90,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): DepositRequest => DepositRequest::from($item), $data),
+ array_map(fn (array $item): DepositRequest => DepositRequest::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/DepositStrategiesApi.php b/src/Api/DepositStrategiesApi.php
index f485f00d8..76526005a 100644
--- a/src/Api/DepositStrategiesApi.php
+++ b/src/Api/DepositStrategiesApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DepositStrategy::from($data);
+ return DepositStrategy::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DepositStrategy::from($data);
+ return DepositStrategy::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -96,10 +96,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): DepositStrategy => DepositStrategy::from($item), $data),
+ array_map(fn (array $item): DepositStrategy => DepositStrategy::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -141,6 +144,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DepositStrategy::from($data);
+ return DepositStrategy::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/DigitalWalletsApi.php b/src/Api/DigitalWalletsApi.php
index 80920afc3..20b35ebee 100644
--- a/src/Api/DigitalWalletsApi.php
+++ b/src/Api/DigitalWalletsApi.php
@@ -37,7 +37,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DigitalWalletOnboardingApplePay::from($data);
+ return DigitalWalletOnboardingApplePay::from($data, ['headers' => $response->getHeaders()]);
}
public function validate(
@@ -51,6 +51,6 @@ public function validate(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DigitalWalletValidation::from($data);
+ return DigitalWalletValidation::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/DisputesApi.php b/src/Api/DisputesApi.php
index 8e610e6f7..e1275711d 100644
--- a/src/Api/DisputesApi.php
+++ b/src/Api/DisputesApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Dispute::from($data);
+ return Dispute::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -57,7 +57,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Dispute::from($data);
+ return Dispute::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -88,10 +88,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Dispute => Dispute::from($item), $data),
+ array_map(fn (array $item): Dispute => Dispute::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -137,6 +140,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Dispute::from($data);
+ return Dispute::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/EmailDeliverySettingsApi.php b/src/Api/EmailDeliverySettingsApi.php
index b8b210f5b..0119676e0 100644
--- a/src/Api/EmailDeliverySettingsApi.php
+++ b/src/Api/EmailDeliverySettingsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EmailDeliverySetting::from($data);
+ return EmailDeliverySetting::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EmailDeliverySetting::from($data);
+ return EmailDeliverySetting::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): EmailDeliverySetting => EmailDeliverySetting::from($item), $data),
+ array_map(fn (array $item): EmailDeliverySetting => EmailDeliverySetting::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -144,7 +147,7 @@ public function resendVerification(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EmailDeliverySetting::from($data);
+ return EmailDeliverySetting::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -163,7 +166,7 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EmailDeliverySetting::from($data);
+ return EmailDeliverySetting::from($data, ['headers' => $response->getHeaders()]);
}
public function verify(
@@ -181,6 +184,6 @@ public function verify(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EmailDeliverySetting::from($data);
+ return EmailDeliverySetting::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/EmailMessagesApi.php b/src/Api/EmailMessagesApi.php
index 6af984dd0..b54887850 100644
--- a/src/Api/EmailMessagesApi.php
+++ b/src/Api/EmailMessagesApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EmailMessage::from($data);
+ return EmailMessage::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -70,7 +70,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EmailMessage::from($data);
+ return EmailMessage::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -99,10 +99,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): EmailMessage => EmailMessage::from($item), $data),
+ array_map(fn (array $item): EmailMessage => EmailMessage::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -146,6 +149,6 @@ public function send(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return EmailMessage::from($data);
+ return EmailMessage::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/EmailNotificationsApi.php b/src/Api/EmailNotificationsApi.php
index 7b3cbe793..cef309060 100644
--- a/src/Api/EmailNotificationsApi.php
+++ b/src/Api/EmailNotificationsApi.php
@@ -47,10 +47,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): EmailNotification => EmailNotification::from($item), $data),
+ array_map(fn (array $item): EmailNotification => EmailNotification::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/EventsApi.php b/src/Api/EventsApi.php
index 2098660cb..fe532f6d2 100644
--- a/src/Api/EventsApi.php
+++ b/src/Api/EventsApi.php
@@ -48,7 +48,7 @@ public function createDraftRuleset(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RuleSetDraft::from($data);
+ return RuleSetDraft::from($data, ['headers' => $response->getHeaders()]);
}
public function createRules(
@@ -67,7 +67,7 @@ public function createRules(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RuleSet::from($data);
+ return RuleSet::from($data, ['headers' => $response->getHeaders()]);
}
public function createTimelineComment(
@@ -86,7 +86,7 @@ public function createTimelineComment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RulesEngineTimeline::from($data);
+ return RulesEngineTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function deleteDraftRuleset(
@@ -134,7 +134,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SystemEvent::from($data);
+ return SystemEvent::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -161,10 +161,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): SystemEvent => SystemEvent::from($item), $data),
+ array_map(fn (array $item): SystemEvent => SystemEvent::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -223,10 +226,13 @@ public function getAllDraftRulesets(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): RuleSetDraft => RuleSetDraft::from($item), $data),
+ array_map(fn (array $item): RuleSetDraft => RuleSetDraft::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -289,10 +295,13 @@ public function getAllTimelineMessages(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): RulesEngineTimeline => RulesEngineTimeline::from($item), $data),
+ array_map(fn (array $item): RulesEngineTimeline => RulesEngineTimeline::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -343,7 +352,7 @@ public function getDraftRuleset(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RuleSetDraft::from($data);
+ return RuleSetDraft::from($data, ['headers' => $response->getHeaders()]);
}
public function getRules(
@@ -361,7 +370,7 @@ public function getRules(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RuleSet::from($data);
+ return RuleSet::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -397,10 +406,13 @@ public function getRulesHistory(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): RuleSetHistoryItem => RuleSetHistoryItem::from($item), $data),
+ array_map(fn (array $item): RuleSetHistoryItem => RuleSetHistoryItem::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -453,7 +465,7 @@ public function getRulesVersionDetail(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RuleSetVersion::from($data);
+ return RuleSetVersion::from($data, ['headers' => $response->getHeaders()]);
}
public function getRulesVersionNumber(
@@ -477,7 +489,7 @@ public function getRulesVersionNumber(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RuleSetHistoryItem::from($data);
+ return RuleSetHistoryItem::from($data, ['headers' => $response->getHeaders()]);
}
public function getTimelineMessage(
@@ -497,7 +509,7 @@ public function getTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RulesEngineTimeline::from($data);
+ return RulesEngineTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function updateDraftRuleset(
@@ -518,6 +530,6 @@ public function updateDraftRuleset(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RuleSetDraft::from($data);
+ return RuleSetDraft::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/ExternalIdentifiersApi.php b/src/Api/ExternalIdentifiersApi.php
index 971dccd56..fec2ab8b0 100644
--- a/src/Api/ExternalIdentifiersApi.php
+++ b/src/Api/ExternalIdentifiersApi.php
@@ -63,7 +63,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ExternalIdentifier::from($data);
+ return ExternalIdentifier::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -90,10 +90,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): ExternalIdentifier => ExternalIdentifier::from($item), $data),
+ array_map(fn (array $item): ExternalIdentifier => ExternalIdentifier::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -156,6 +159,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ExternalIdentifier::from($data);
+ return ExternalIdentifier::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/ExternalServicesSettingsApi.php b/src/Api/ExternalServicesSettingsApi.php
index e346fb92f..72ca2310c 100644
--- a/src/Api/ExternalServicesSettingsApi.php
+++ b/src/Api/ExternalServicesSettingsApi.php
@@ -35,7 +35,7 @@ public function getExternalServiceSettings(): ExternalServiceSettings
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ExternalServiceSettings::from($data);
+ return ExternalServiceSettings::from($data, ['headers' => $response->getHeaders()]);
}
public function updateExternalServiceSettings(
@@ -49,6 +49,6 @@ public function updateExternalServiceSettings(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ExternalServiceSettings::from($data);
+ return ExternalServiceSettings::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/FeesApi.php b/src/Api/FeesApi.php
index cf8078a44..523faf375 100644
--- a/src/Api/FeesApi.php
+++ b/src/Api/FeesApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Fee::from($data);
+ return Fee::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -70,7 +70,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Fee::from($data);
+ return Fee::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -97,10 +97,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Fee => Fee::from($item), $data),
+ array_map(fn (array $item): Fee => Fee::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -142,7 +145,7 @@ public function patch(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Fee::from($data);
+ return Fee::from($data, ['headers' => $response->getHeaders()]);
}
public function upsert(
@@ -161,6 +164,6 @@ public function upsert(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Fee::from($data);
+ return Fee::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/FilesApi.php b/src/Api/FilesApi.php
index df4ee41ed..b8ad95990 100644
--- a/src/Api/FilesApi.php
+++ b/src/Api/FilesApi.php
@@ -41,7 +41,7 @@ public function attach(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Attachment::from($data);
+ return Attachment::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -125,7 +125,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return File::from($data);
+ return File::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -156,10 +156,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): File => File::from($item), $data),
+ array_map(fn (array $item): File => File::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -219,10 +222,13 @@ public function getAllAttachments(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Attachment => Attachment::from($item), $data),
+ array_map(fn (array $item): Attachment => Attachment::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -269,7 +275,7 @@ public function getAttachment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Attachment::from($data);
+ return Attachment::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -288,7 +294,7 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return File::from($data);
+ return File::from($data, ['headers' => $response->getHeaders()]);
}
public function updateAttachment(
@@ -307,7 +313,7 @@ public function updateAttachment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Attachment::from($data);
+ return Attachment::from($data, ['headers' => $response->getHeaders()]);
}
public function upload(
@@ -321,6 +327,6 @@ public function upload(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return File::from($data);
+ return File::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/GatewayAccountsApi.php b/src/Api/GatewayAccountsApi.php
index 1c58cf259..8bf189b2d 100644
--- a/src/Api/GatewayAccountsApi.php
+++ b/src/Api/GatewayAccountsApi.php
@@ -59,7 +59,7 @@ public function close(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccount::from($data);
+ return GatewayAccount::from($data, ['headers' => $response->getHeaders()]);
}
public function create(
@@ -73,7 +73,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccount::from($data);
+ return GatewayAccount::from($data, ['headers' => $response->getHeaders()]);
}
public function createDowntimeSchedule(
@@ -92,7 +92,7 @@ public function createDowntimeSchedule(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccountDowntimeSchedule::from($data);
+ return GatewayAccountDowntimeSchedule::from($data, ['headers' => $response->getHeaders()]);
}
public function createTimelineComment(
@@ -111,7 +111,7 @@ public function createTimelineComment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccountTimeline::from($data);
+ return GatewayAccountTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -187,7 +187,7 @@ public function disable(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccount::from($data);
+ return GatewayAccount::from($data, ['headers' => $response->getHeaders()]);
}
public function enable(
@@ -205,7 +205,7 @@ public function enable(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccount::from($data);
+ return GatewayAccount::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -223,7 +223,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccount::from($data);
+ return GatewayAccount::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -254,10 +254,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): GatewayAccount => GatewayAccount::from($item), $data),
+ array_map(fn (array $item): GatewayAccount => GatewayAccount::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -316,10 +319,13 @@ public function getAllDowntimeSchedules(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): GatewayAccountDowntimeSchedule => GatewayAccountDowntimeSchedule::from($item), $data),
+ array_map(fn (array $item): GatewayAccountDowntimeSchedule => GatewayAccountDowntimeSchedule::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -378,10 +384,13 @@ public function getAllTimelineMessages(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): GatewayAccountTimeline => GatewayAccountTimeline::from($item), $data),
+ array_map(fn (array $item): GatewayAccountTimeline => GatewayAccountTimeline::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -429,7 +438,7 @@ public function getAllVolumeLimits(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return array_map(fn (array $item): GatewayAccountLimit => GatewayAccountLimit::from($item), $data);
+ return array_map(fn (array $item): GatewayAccountLimit => GatewayAccountLimit::from($item, ['headers' => $response->getHeaders()]), $data);
}
public function getDowntimeSchedule(
@@ -449,7 +458,7 @@ public function getDowntimeSchedule(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccountDowntimeSchedule::from($data);
+ return GatewayAccountDowntimeSchedule::from($data, ['headers' => $response->getHeaders()]);
}
public function getFinancialSettings(
@@ -467,7 +476,7 @@ public function getFinancialSettings(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccountFinancialSettings::from($data);
+ return GatewayAccountFinancialSettings::from($data, ['headers' => $response->getHeaders()]);
}
public function getTimelineMessage(
@@ -487,7 +496,7 @@ public function getTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccountTimeline::from($data);
+ return GatewayAccountTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function getVolumeLimit(
@@ -507,7 +516,7 @@ public function getVolumeLimit(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccountLimit::from($data);
+ return GatewayAccountLimit::from($data, ['headers' => $response->getHeaders()]);
}
public function setFinancialSettings(
@@ -526,7 +535,7 @@ public function setFinancialSettings(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccountFinancialSettings::from($data);
+ return GatewayAccountFinancialSettings::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -545,7 +554,7 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccount::from($data);
+ return GatewayAccount::from($data, ['headers' => $response->getHeaders()]);
}
public function updateDowntimeSchedule(
@@ -566,7 +575,7 @@ public function updateDowntimeSchedule(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccountDowntimeSchedule::from($data);
+ return GatewayAccountDowntimeSchedule::from($data, ['headers' => $response->getHeaders()]);
}
public function updateVolumeLimit(
@@ -587,7 +596,7 @@ public function updateVolumeLimit(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccountLimit::from($data);
+ return GatewayAccountLimit::from($data, ['headers' => $response->getHeaders()]);
}
public function upsert(
@@ -606,6 +615,6 @@ public function upsert(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GatewayAccount::from($data);
+ return GatewayAccount::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/HistogramsApi.php b/src/Api/HistogramsApi.php
index 47601f342..aeee90edf 100644
--- a/src/Api/HistogramsApi.php
+++ b/src/Api/HistogramsApi.php
@@ -50,7 +50,7 @@ public function getAmlCheckHistogramReport(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return HistogramData::from($data);
+ return HistogramData::from($data, ['headers' => $response->getHeaders()]);
}
public function getTransactionHistogramReport(
@@ -75,6 +75,6 @@ public function getTransactionHistogramReport(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return HistogramData::from($data);
+ return HistogramData::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/IntegrationsApi.php b/src/Api/IntegrationsApi.php
index a4f804055..58e1418b9 100644
--- a/src/Api/IntegrationsApi.php
+++ b/src/Api/IntegrationsApi.php
@@ -42,7 +42,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Integration::from($data);
+ return Integration::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -65,10 +65,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Integration => Integration::from($item), $data),
+ array_map(fn (array $item): Integration => Integration::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/InvoicesApi.php b/src/Api/InvoicesApi.php
index 7dc8aec7e..d7e79f93d 100644
--- a/src/Api/InvoicesApi.php
+++ b/src/Api/InvoicesApi.php
@@ -49,7 +49,7 @@ public function abandon(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
public function applyTransaction(
@@ -68,7 +68,7 @@ public function applyTransaction(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
public function create(
@@ -82,7 +82,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
public function createInvoiceItem(
@@ -101,7 +101,7 @@ public function createInvoiceItem(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return InvoiceItem::from($data);
+ return InvoiceItem::from($data, ['headers' => $response->getHeaders()]);
}
public function createTimelineComment(
@@ -120,7 +120,7 @@ public function createTimelineComment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return InvoiceTimeline::from($data);
+ return InvoiceTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function deleteInvoiceItem(
@@ -156,7 +156,7 @@ public function deleteTimelineMessage(
public function get(
string $id,
?string $expand = null,
- ): Invoice {
+ ): StreamInterface {
$pathParams = [
'{id}' => $id,
];
@@ -166,13 +166,10 @@ public function get(
];
$uri = str_replace(array_keys($pathParams), array_values($pathParams), '/invoices/{id}?') . http_build_query($queryParams);
- $request = new Request('GET', $uri, headers: [
- 'Accept' => 'application/json',
- ]);
- $response = $this->client->send($request);
- $data = Utils::jsonDecode((string) $response->getBody(), true);
+ $request = new Request('GET', $uri);
+ $response = $this->client->send($request, ['allow_redirects' => ['refer' => true]]);
- return Invoice::from($data);
+ return $response->getBody();
}
public function getPdf(
@@ -224,10 +221,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Invoice => Invoice::from($item), $data),
+ array_map(fn (array $item): Invoice => Invoice::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -284,10 +284,13 @@ public function getAllInvoiceItems(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): InvoiceItem => InvoiceItem::from($item), $data),
+ array_map(fn (array $item): InvoiceItem => InvoiceItem::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -344,10 +347,13 @@ public function getAllTimelineMessages(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): InvoiceTimeline => InvoiceTimeline::from($item), $data),
+ array_map(fn (array $item): InvoiceTimeline => InvoiceTimeline::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -402,10 +408,13 @@ public function getAllTransactionAllocations(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): InvoiceTransactionAllocation => InvoiceTransactionAllocation::from($item), $data),
+ array_map(fn (array $item): InvoiceTransactionAllocation => InvoiceTransactionAllocation::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -446,7 +455,7 @@ public function getInvoiceItem(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return InvoiceItem::from($data);
+ return InvoiceItem::from($data, ['headers' => $response->getHeaders()]);
}
public function getTimelineMessage(
@@ -466,7 +475,7 @@ public function getTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return InvoiceTimeline::from($data);
+ return InvoiceTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function issue(
@@ -485,7 +494,7 @@ public function issue(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
public function recalculate(
@@ -503,7 +512,7 @@ public function recalculate(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
public function reissue(
@@ -522,7 +531,7 @@ public function reissue(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -541,7 +550,7 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
public function updateInvoiceItem(
@@ -562,7 +571,7 @@ public function updateInvoiceItem(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return InvoiceItem::from($data);
+ return InvoiceItem::from($data, ['headers' => $response->getHeaders()]);
}
public function void(
@@ -580,6 +589,6 @@ public function void(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/JournalAccountsApi.php b/src/Api/JournalAccountsApi.php
index 46ad1da7b..d2de02ebe 100644
--- a/src/Api/JournalAccountsApi.php
+++ b/src/Api/JournalAccountsApi.php
@@ -38,7 +38,7 @@ public function createAccount(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalAccount::from($data);
+ return JournalAccount::from($data, ['headers' => $response->getHeaders()]);
}
public function getAccount(
@@ -56,7 +56,7 @@ public function getAccount(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalAccount::from($data);
+ return JournalAccount::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -83,10 +83,13 @@ public function getAllAccounts(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): JournalAccount => JournalAccount::from($item), $data),
+ array_map(fn (array $item): JournalAccount => JournalAccount::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -128,6 +131,6 @@ public function updateAccount(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalAccount::from($data);
+ return JournalAccount::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/JournalEntriesApi.php b/src/Api/JournalEntriesApi.php
index 4fa1c32ae..b0b6a8bda 100644
--- a/src/Api/JournalEntriesApi.php
+++ b/src/Api/JournalEntriesApi.php
@@ -38,7 +38,7 @@ public function createEntry(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalEntry::from($data);
+ return JournalEntry::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -65,10 +65,13 @@ public function getAllEntries(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): JournalEntry => JournalEntry::from($item), $data),
+ array_map(fn (array $item): JournalEntry => JournalEntry::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -109,7 +112,7 @@ public function getEntry(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalEntry::from($data);
+ return JournalEntry::from($data, ['headers' => $response->getHeaders()]);
}
public function updateEntry(
@@ -128,6 +131,6 @@ public function updateEntry(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalEntry::from($data);
+ return JournalEntry::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/JournalRecordsApi.php b/src/Api/JournalRecordsApi.php
index 06fe9adc8..25064ed84 100644
--- a/src/Api/JournalRecordsApi.php
+++ b/src/Api/JournalRecordsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalRecord::from($data);
+ return JournalRecord::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalRecord::from($data);
+ return JournalRecord::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): JournalRecord => JournalRecord::from($item), $data),
+ array_map(fn (array $item): JournalRecord => JournalRecord::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -145,6 +148,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalRecord::from($data);
+ return JournalRecord::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/KycDocumentsApi.php b/src/Api/KycDocumentsApi.php
index 5aad6df4b..3ed432b30 100644
--- a/src/Api/KycDocumentsApi.php
+++ b/src/Api/KycDocumentsApi.php
@@ -45,7 +45,7 @@ public function accept(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycDocumentFactory::from($data);
+ return KycDocumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function create(
@@ -59,7 +59,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycDocumentFactory::from($data);
+ return KycDocumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -77,7 +77,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycDocumentFactory::from($data);
+ return KycDocumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -106,10 +106,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): KycDocument => KycDocumentFactory::from($item), $data),
+ array_map(fn (array $item): KycDocument => KycDocumentFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -167,7 +170,7 @@ public function reject(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycDocumentFactory::from($data);
+ return KycDocumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function review(
@@ -185,7 +188,7 @@ public function review(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycDocumentFactory::from($data);
+ return KycDocumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function startReview(
@@ -203,7 +206,7 @@ public function startReview(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycDocumentFactory::from($data);
+ return KycDocumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function stopReview(
@@ -221,7 +224,7 @@ public function stopReview(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycDocumentFactory::from($data);
+ return KycDocumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -240,6 +243,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycDocumentFactory::from($data);
+ return KycDocumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/KycRequestsApi.php b/src/Api/KycRequestsApi.php
index 2829722c8..31440eec5 100644
--- a/src/Api/KycRequestsApi.php
+++ b/src/Api/KycRequestsApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycRequest::from($data);
+ return KycRequest::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -70,7 +70,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycRequest::from($data);
+ return KycRequest::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -99,10 +99,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): KycRequest => KycRequest::from($item), $data),
+ array_map(fn (array $item): KycRequest => KycRequest::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -146,6 +149,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycRequest::from($data);
+ return KycRequest::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/KycSettingsApi.php b/src/Api/KycSettingsApi.php
index b5c52209b..4c92acd69 100644
--- a/src/Api/KycSettingsApi.php
+++ b/src/Api/KycSettingsApi.php
@@ -35,7 +35,7 @@ public function getKycSettings(): KycSettings
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycSettings::from($data);
+ return KycSettings::from($data, ['headers' => $response->getHeaders()]);
}
public function updateKycSettings(
@@ -49,6 +49,6 @@ public function updateKycSettings(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return KycSettings::from($data);
+ return KycSettings::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/ListsApi.php b/src/Api/ListsApi.php
index 2af315295..8a552ac43 100644
--- a/src/Api/ListsApi.php
+++ b/src/Api/ListsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ValueList::from($data);
+ return ValueList::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -82,10 +82,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): ValueList => ValueList::from($item), $data),
+ array_map(fn (array $item): ValueList => ValueList::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -132,7 +135,7 @@ public function getByVersion(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ValueList::from($data);
+ return ValueList::from($data, ['headers' => $response->getHeaders()]);
}
public function getLatestVersion(
@@ -150,7 +153,7 @@ public function getLatestVersion(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ValueList::from($data);
+ return ValueList::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -169,6 +172,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ValueList::from($data);
+ return ValueList::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/MembershipsApi.php b/src/Api/MembershipsApi.php
index 750125578..d9a4c6ffe 100644
--- a/src/Api/MembershipsApi.php
+++ b/src/Api/MembershipsApi.php
@@ -59,7 +59,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Membership::from($data);
+ return Membership::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -86,10 +86,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Membership => Membership::from($item), $data),
+ array_map(fn (array $item): Membership => Membership::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -133,6 +136,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Membership::from($data);
+ return Membership::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/OrderCancellationsApi.php b/src/Api/OrderCancellationsApi.php
index 62578d0d3..19619d4f8 100644
--- a/src/Api/OrderCancellationsApi.php
+++ b/src/Api/OrderCancellationsApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderCancellation::from($data);
+ return OrderCancellation::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -70,7 +70,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderCancellation::from($data);
+ return OrderCancellation::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -97,10 +97,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): OrderCancellation => OrderCancellation::from($item), $data),
+ array_map(fn (array $item): OrderCancellation => OrderCancellation::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -142,7 +145,7 @@ public function patch(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderCancellation::from($data);
+ return OrderCancellation::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -161,6 +164,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderCancellation::from($data);
+ return OrderCancellation::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/OrderPausesApi.php b/src/Api/OrderPausesApi.php
index 378e7ec51..f264d7f87 100644
--- a/src/Api/OrderPausesApi.php
+++ b/src/Api/OrderPausesApi.php
@@ -55,7 +55,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderPause::from($data);
+ return OrderPause::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -82,10 +82,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): OrderPause => OrderPause::from($item), $data),
+ array_map(fn (array $item): OrderPause => OrderPause::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -122,7 +125,7 @@ public function pause(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderPause::from($data);
+ return OrderPause::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -141,6 +144,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderPause::from($data);
+ return OrderPause::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/OrderReactivationsApi.php b/src/Api/OrderReactivationsApi.php
index 2d97a9727..46440e108 100644
--- a/src/Api/OrderReactivationsApi.php
+++ b/src/Api/OrderReactivationsApi.php
@@ -42,7 +42,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderReactivation::from($data);
+ return OrderReactivation::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -69,10 +69,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): OrderReactivation => OrderReactivation::from($item), $data),
+ array_map(fn (array $item): OrderReactivation => OrderReactivation::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -109,6 +112,6 @@ public function reactivate(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderReactivation::from($data);
+ return OrderReactivation::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/OrdersApi.php b/src/Api/OrdersApi.php
index 0cf131c56..2472df9bd 100644
--- a/src/Api/OrdersApi.php
+++ b/src/Api/OrdersApi.php
@@ -26,6 +26,7 @@
use Rebilly\Sdk\Model\OrderItemUpdate;
use Rebilly\Sdk\Model\OrderUpcomingInvoice;
use Rebilly\Sdk\Model\SubscriptionInvoice;
+use Rebilly\Sdk\Model\SubscriptionOrOneTimeSaleItem;
use Rebilly\Sdk\Model\UpcomingInvoice;
use Rebilly\Sdk\Paginator;
@@ -55,7 +56,7 @@ public function changeItems(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderFactory::from($data);
+ return OrderFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function create(
@@ -73,7 +74,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderFactory::from($data);
+ return OrderFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function createInterimInvoice(
@@ -92,7 +93,7 @@ public function createInterimInvoice(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -114,7 +115,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderFactory::from($data);
+ return OrderFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -143,10 +144,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Order => OrderFactory::from($item), $data),
+ array_map(fn (array $item): Order => OrderFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -193,7 +197,7 @@ public function getUpcomingInvoice(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderUpcomingInvoice::from($data);
+ return OrderUpcomingInvoice::from($data, ['headers' => $response->getHeaders()]);
}
public function issueEarlyUpcomingInvoice(
@@ -212,7 +216,7 @@ public function issueEarlyUpcomingInvoice(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return UpcomingInvoice::from($data);
+ return UpcomingInvoice::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -235,14 +239,14 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderFactory::from($data);
+ return OrderFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function updateItem(
string $id,
string $itemId,
OrderItemUpdate $orderItemUpdate,
- ): Order {
+ ): SubscriptionOrOneTimeSaleItem {
$pathParams = [
'{id}' => $id,
'{itemId}' => $itemId,
@@ -256,7 +260,7 @@ public function updateItem(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderFactory::from($data);
+ return SubscriptionOrOneTimeSaleItem::from($data, ['headers' => $response->getHeaders()]);
}
public function void(
@@ -274,6 +278,6 @@ public function void(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderFactory::from($data);
+ return OrderFactory::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/OrganizationExportsApi.php b/src/Api/OrganizationExportsApi.php
index b08022c47..4ec51995f 100644
--- a/src/Api/OrganizationExportsApi.php
+++ b/src/Api/OrganizationExportsApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrganizationExport::from($data);
+ return OrganizationExport::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -57,7 +57,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrganizationExport::from($data);
+ return OrganizationExport::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -86,10 +86,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): OrganizationExport => OrganizationExport::from($item), $data),
+ array_map(fn (array $item): OrganizationExport => OrganizationExport::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/OrganizationsApi.php b/src/Api/OrganizationsApi.php
index 4b0242431..fe073e5c4 100644
--- a/src/Api/OrganizationsApi.php
+++ b/src/Api/OrganizationsApi.php
@@ -40,7 +40,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Organization::from($data);
+ return Organization::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -58,7 +58,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Organization::from($data);
+ return Organization::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -87,10 +87,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Organization => Organization::from($item), $data),
+ array_map(fn (array $item): Organization => Organization::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -134,6 +137,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Organization::from($data);
+ return Organization::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/PaymentCardsBankNamesApi.php b/src/Api/PaymentCardsBankNamesApi.php
index d5e3b0ab4..6ba468926 100644
--- a/src/Api/PaymentCardsBankNamesApi.php
+++ b/src/Api/PaymentCardsBankNamesApi.php
@@ -44,6 +44,6 @@ public function getAll(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return array_map(fn (array $item): GetPaymentCardBankNameCollectionResponse => GetPaymentCardBankNameCollectionResponse::from($item), $data);
+ return array_map(fn (array $item): GetPaymentCardBankNameCollectionResponse => GetPaymentCardBankNameCollectionResponse::from($item, ['headers' => $response->getHeaders()]), $data);
}
}
diff --git a/src/Api/PaymentInstrumentsApi.php b/src/Api/PaymentInstrumentsApi.php
index b588097cb..8dcafda15 100644
--- a/src/Api/PaymentInstrumentsApi.php
+++ b/src/Api/PaymentInstrumentsApi.php
@@ -42,7 +42,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PaymentInstrumentFactory::from($data);
+ return PaymentInstrumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function deactivate(
@@ -60,7 +60,7 @@ public function deactivate(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PaymentInstrumentFactory::from($data);
+ return PaymentInstrumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -78,7 +78,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PaymentInstrumentFactory::from($data);
+ return PaymentInstrumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -109,10 +109,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): PaymentInstrument => PaymentInstrumentFactory::from($item), $data),
+ array_map(fn (array $item): PaymentInstrument => PaymentInstrumentFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -158,7 +161,7 @@ public function nameInquiry(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PaymentInstrumentNameInquiry::from($data);
+ return PaymentInstrumentNameInquiry::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -177,6 +180,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PaymentInstrumentFactory::from($data);
+ return PaymentInstrumentFactory::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/PaymentMethodsApi.php b/src/Api/PaymentMethodsApi.php
index f903b4024..4ef5ba3fb 100644
--- a/src/Api/PaymentMethodsApi.php
+++ b/src/Api/PaymentMethodsApi.php
@@ -42,7 +42,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PaymentMethodMetadata::from($data);
+ return PaymentMethodMetadata::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -65,10 +65,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): PaymentMethodMetadata => PaymentMethodMetadata::from($item), $data),
+ array_map(fn (array $item): PaymentMethodMetadata => PaymentMethodMetadata::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/PaymentTokensApi.php b/src/Api/PaymentTokensApi.php
index ece6d6fa4..e11fbea15 100644
--- a/src/Api/PaymentTokensApi.php
+++ b/src/Api/PaymentTokensApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CompositeTokenFactory::from($data);
+ return CompositeTokenFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -57,7 +57,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CompositeTokenFactory::from($data);
+ return CompositeTokenFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -80,10 +80,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): CompositeToken => CompositeTokenFactory::from($item), $data),
+ array_map(fn (array $item): CompositeToken => CompositeTokenFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/PayoutRequestAllocationsApi.php b/src/Api/PayoutRequestAllocationsApi.php
index 73e75833e..0fe53b3bf 100644
--- a/src/Api/PayoutRequestAllocationsApi.php
+++ b/src/Api/PayoutRequestAllocationsApi.php
@@ -17,10 +17,13 @@
use GuzzleHttp\ClientInterface;
use GuzzleHttp\Psr7\Request;
use GuzzleHttp\Utils;
+use Rebilly\Sdk\Collection;
use Rebilly\Sdk\Model\PatchPayoutRequestAllocationRequest;
use Rebilly\Sdk\Model\PayoutRequestAllocation;
use Rebilly\Sdk\Model\PostPayoutRequestAllocationRequest;
+use Rebilly\Sdk\Model\PostPayoutRequestAllocationsProcessRequest;
use Rebilly\Sdk\Model\PostPayoutRequestAutoAllocationRequest;
+use Rebilly\Sdk\Paginator;
class PayoutRequestAllocationsApi
{
@@ -48,7 +51,90 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequestAllocation::from($data);
+ return PayoutRequestAllocation::from($data, ['headers' => $response->getHeaders()]);
+ }
+
+ public function get(
+ string $id,
+ ): PayoutRequestAllocation {
+ $pathParams = [
+ '{id}' => $id,
+ ];
+
+ $uri = str_replace(array_keys($pathParams), array_values($pathParams), '/payout-request-allocations/{id}');
+
+ $request = new Request('GET', $uri, headers: [
+ 'Accept' => 'application/json',
+ ]);
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return PayoutRequestAllocation::from($data, ['headers' => $response->getHeaders()]);
+ }
+
+ /**
+ * @return Collection
+ */
+ public function getAll(
+ ?int $limit = null,
+ ?int $offset = null,
+ ?string $filter = null,
+ ?array $sort = null,
+ ): Collection {
+ $queryParams = [
+ 'limit' => $limit,
+ 'offset' => $offset,
+ 'filter' => $filter,
+ 'sort' => $sort ? implode(',', $sort) : null,
+ ];
+ $uri = '/payout-request-allocations?' . http_build_query($queryParams);
+
+ $request = new Request('GET', $uri, headers: [
+ 'Accept' => 'application/json',
+ ]);
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return new Collection(
+ array_map(fn (array $item): PayoutRequestAllocation => PayoutRequestAllocation::from($item, ['headers' => $response->getHeaders()]), $data),
+ (int) $response->getHeaderLine(Collection::HEADER_LIMIT),
+ (int) $response->getHeaderLine(Collection::HEADER_OFFSET),
+ (int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
+ );
+ }
+
+ /**
+ * @return Paginator
+ */
+ public function getAllPaginator(
+ ?int $limit = null,
+ ?int $offset = null,
+ ?string $filter = null,
+ ?array $sort = null,
+ ): Paginator {
+ $closure = fn (?int $limit, ?int $offset): Collection => $this->getAll(
+ limit: $limit,
+ offset: $offset,
+ filter: $filter,
+ sort: $sort,
+ );
+
+ return new Paginator(
+ $limit !== null || $offset !== null ? $closure(limit: $limit, offset: $offset) : null,
+ $closure,
+ );
+ }
+
+ public function process(
+ PostPayoutRequestAllocationsProcessRequest $postPayoutRequestAllocationsProcessRequest,
+ ): void {
+ $uri = '/payout-request-allocations/process';
+
+ $request = new Request('POST', $uri, body: Utils::jsonEncode($postPayoutRequestAllocationsProcessRequest));
+ $this->client->send($request);
}
public function update(
@@ -67,6 +153,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequestAllocation::from($data);
+ return PayoutRequestAllocation::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/PayoutRequestBatchesApi.php b/src/Api/PayoutRequestBatchesApi.php
new file mode 100644
index 000000000..51d59e519
--- /dev/null
+++ b/src/Api/PayoutRequestBatchesApi.php
@@ -0,0 +1,192 @@
+ $id,
+ ];
+
+ $uri = str_replace(array_keys($pathParams), array_values($pathParams), '/payout-request-batches/{id}/approve');
+
+ $request = new Request('POST', $uri, headers: [
+ 'Accept' => 'application/json',
+ ]);
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return PayoutRequestBatch::from($data, ['headers' => $response->getHeaders()]);
+ }
+
+ public function autoAllocate(
+ string $id,
+ ): PayoutRequestBatch {
+ $pathParams = [
+ '{id}' => $id,
+ ];
+
+ $uri = str_replace(array_keys($pathParams), array_values($pathParams), '/payout-request-batches/{id}/auto-allocate');
+
+ $request = new Request('POST', $uri, headers: [
+ 'Accept' => 'application/json',
+ ]);
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return PayoutRequestBatch::from($data, ['headers' => $response->getHeaders()]);
+ }
+
+ public function block(
+ string $id,
+ PostPayoutRequestBatchBlockRequest $postPayoutRequestBatchBlockRequest,
+ ): PayoutRequestBatch {
+ $pathParams = [
+ '{id}' => $id,
+ ];
+
+ $uri = str_replace(array_keys($pathParams), array_values($pathParams), '/payout-request-batches/{id}/block');
+
+ $request = new Request('POST', $uri, headers: [
+ 'Accept' => 'application/json',
+ ], body: Utils::jsonEncode($postPayoutRequestBatchBlockRequest));
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return PayoutRequestBatch::from($data, ['headers' => $response->getHeaders()]);
+ }
+
+ public function create(
+ PostPayoutRequestBatchRequest $postPayoutRequestBatchRequest,
+ ): PayoutRequestBatch {
+ $uri = '/payout-request-batches';
+
+ $request = new Request('POST', $uri, headers: [
+ 'Accept' => 'application/json',
+ ], body: Utils::jsonEncode($postPayoutRequestBatchRequest));
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return PayoutRequestBatch::from($data, ['headers' => $response->getHeaders()]);
+ }
+
+ public function get(
+ string $id,
+ ): PayoutRequestBatch {
+ $pathParams = [
+ '{id}' => $id,
+ ];
+
+ $uri = str_replace(array_keys($pathParams), array_values($pathParams), '/payout-request-batches/{id}');
+
+ $request = new Request('GET', $uri, headers: [
+ 'Accept' => 'application/json',
+ ]);
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return PayoutRequestBatch::from($data, ['headers' => $response->getHeaders()]);
+ }
+
+ /**
+ * @return Collection
+ */
+ public function getAll(
+ ?int $limit = null,
+ ?int $offset = null,
+ ?string $filter = null,
+ ?array $sort = null,
+ ): Collection {
+ $queryParams = [
+ 'limit' => $limit,
+ 'offset' => $offset,
+ 'filter' => $filter,
+ 'sort' => $sort ? implode(',', $sort) : null,
+ ];
+ $uri = '/payout-request-batches?' . http_build_query($queryParams);
+
+ $request = new Request('GET', $uri, headers: [
+ 'Accept' => 'application/json',
+ ]);
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return new Collection(
+ array_map(fn (array $item): PayoutRequestBatch => PayoutRequestBatch::from($item, ['headers' => $response->getHeaders()]), $data),
+ (int) $response->getHeaderLine(Collection::HEADER_LIMIT),
+ (int) $response->getHeaderLine(Collection::HEADER_OFFSET),
+ (int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
+ );
+ }
+
+ /**
+ * @return Paginator
+ */
+ public function getAllPaginator(
+ ?int $limit = null,
+ ?int $offset = null,
+ ?string $filter = null,
+ ?array $sort = null,
+ ): Paginator {
+ $closure = fn (?int $limit, ?int $offset): Collection => $this->getAll(
+ limit: $limit,
+ offset: $offset,
+ filter: $filter,
+ sort: $sort,
+ );
+
+ return new Paginator(
+ $limit !== null || $offset !== null ? $closure(limit: $limit, offset: $offset) : null,
+ $closure,
+ );
+ }
+
+ public function preview(
+ ?string $filter = null,
+ ): GetPayoutRequestBatchPreviewResponse {
+ $queryParams = [
+ 'filter' => $filter,
+ ];
+ $uri = '/payout-request-batches/preview?' . http_build_query($queryParams);
+
+ $request = new Request('GET', $uri, headers: [
+ 'Accept' => 'application/json',
+ ]);
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return GetPayoutRequestBatchPreviewResponse::from($data, ['headers' => $response->getHeaders()]);
+ }
+}
diff --git a/src/Api/PayoutRequestsApi.php b/src/Api/PayoutRequestsApi.php
index 422bed6cc..e13987859 100644
--- a/src/Api/PayoutRequestsApi.php
+++ b/src/Api/PayoutRequestsApi.php
@@ -22,7 +22,9 @@
use Rebilly\Sdk\Model\PatchPayoutRequestRequest;
use Rebilly\Sdk\Model\PayoutRequest;
use Rebilly\Sdk\Model\PayoutRequestCancellation;
+use Rebilly\Sdk\Model\PayoutRequestSplit;
use Rebilly\Sdk\Model\PayoutRequestTimelineMessage;
+use Rebilly\Sdk\Model\PayoutRequestV2;
use Rebilly\Sdk\Paginator;
class PayoutRequestsApi
@@ -47,7 +49,7 @@ public function cancel(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequest::from($data);
+ return PayoutRequest::from($data, ['headers' => $response->getHeaders()]);
}
public function create(
@@ -61,7 +63,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequest::from($data);
+ return PayoutRequest::from($data, ['headers' => $response->getHeaders()]);
}
public function createTimelineComment(
@@ -80,7 +82,7 @@ public function createTimelineComment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequestTimelineMessage::from($data);
+ return PayoutRequestTimelineMessage::from($data, ['headers' => $response->getHeaders()]);
}
public function deleteTimelineMessage(
@@ -113,7 +115,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequest::from($data);
+ return PayoutRequest::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -140,10 +142,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): PayoutRequest => PayoutRequest::from($item), $data),
+ array_map(fn (array $item): PayoutRequest => PayoutRequest::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -200,10 +205,13 @@ public function getAllTimelineMessages(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): PayoutRequestTimelineMessage => PayoutRequestTimelineMessage::from($item), $data),
+ array_map(fn (array $item): PayoutRequestTimelineMessage => PayoutRequestTimelineMessage::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -251,7 +259,7 @@ public function getPaymentInstruments(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return array_map(fn (array $item): GetPayoutRequestPaymentInstrumentsResponse => GetPayoutRequestPaymentInstrumentsResponse::from($item), $data);
+ return array_map(fn (array $item): GetPayoutRequestPaymentInstrumentsResponse => GetPayoutRequestPaymentInstrumentsResponse::from($item, ['headers' => $response->getHeaders()]), $data);
}
public function getTimelineMessage(
@@ -271,7 +279,7 @@ public function getTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequestTimelineMessage::from($data);
+ return PayoutRequestTimelineMessage::from($data, ['headers' => $response->getHeaders()]);
}
public function patch(
@@ -290,7 +298,29 @@ public function patch(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequest::from($data);
+ return PayoutRequest::from($data, ['headers' => $response->getHeaders()]);
+ }
+
+ /**
+ * @return PayoutRequestV2[]
+ */
+ public function split(
+ string $id,
+ PayoutRequestSplit $payoutRequestSplit,
+ ): array {
+ $pathParams = [
+ '{id}' => $id,
+ ];
+
+ $uri = str_replace(array_keys($pathParams), array_values($pathParams), '/payout-requests/{id}/split');
+
+ $request = new Request('POST', $uri, headers: [
+ 'Accept' => 'application/json',
+ ], body: Utils::jsonEncode($payoutRequestSplit));
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return array_map(fn (array $item): PayoutRequestV2 => PayoutRequestV2::from($item, ['headers' => $response->getHeaders()]), $data);
}
public function update(
@@ -309,6 +339,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequest::from($data);
+ return PayoutRequest::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/PayoutRequestsV2Api.php b/src/Api/PayoutRequestsV2Api.php
index ce905dd52..6f70e0436 100644
--- a/src/Api/PayoutRequestsV2Api.php
+++ b/src/Api/PayoutRequestsV2Api.php
@@ -44,7 +44,7 @@ public function getPaymentInstrumentsV2(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return array_map(fn (array $item): GetPayoutRequestV2PaymentInstrumentsResponse => GetPayoutRequestV2PaymentInstrumentsResponse::from($item), $data);
+ return array_map(fn (array $item): GetPayoutRequestV2PaymentInstrumentsResponse => GetPayoutRequestV2PaymentInstrumentsResponse::from($item, ['headers' => $response->getHeaders()]), $data);
}
public function getV2(
@@ -62,6 +62,6 @@ public function getV2(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PayoutRequestV2::from($data);
+ return PayoutRequestV2::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/PayoutsApi.php b/src/Api/PayoutsApi.php
index a901aa7b9..087a45047 100644
--- a/src/Api/PayoutsApi.php
+++ b/src/Api/PayoutsApi.php
@@ -37,6 +37,6 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Transaction::from($data);
+ return Transaction::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/PlansApi.php b/src/Api/PlansApi.php
index 8f16b0cd4..7bf80cfc5 100644
--- a/src/Api/PlansApi.php
+++ b/src/Api/PlansApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PlanFactory::from($data);
+ return PlanFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -70,7 +70,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PlanFactory::from($data);
+ return PlanFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -99,10 +99,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Plan => PlanFactory::from($item), $data),
+ array_map(fn (array $item): Plan => PlanFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -146,6 +149,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return PlanFactory::from($data);
+ return PlanFactory::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/PreviewsApi.php b/src/Api/PreviewsApi.php
index e36e69dd5..039573895 100644
--- a/src/Api/PreviewsApi.php
+++ b/src/Api/PreviewsApi.php
@@ -38,7 +38,7 @@ public function order(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderPreview::from($data);
+ return OrderPreview::from($data, ['headers' => $response->getHeaders()]);
}
public function sendEmailRuleAction(
@@ -52,7 +52,7 @@ public function sendEmailRuleAction(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RulesEmailNotification::from($data);
+ return RulesEmailNotification::from($data, ['headers' => $response->getHeaders()]);
}
public function webhook(
diff --git a/src/Api/ProductsApi.php b/src/Api/ProductsApi.php
index ea3a70124..2752f2a36 100644
--- a/src/Api/ProductsApi.php
+++ b/src/Api/ProductsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Product::from($data);
+ return Product::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Product::from($data);
+ return Product::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Product => Product::from($item), $data),
+ array_map(fn (array $item): Product => Product::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -145,6 +148,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Product::from($data);
+ return Product::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/ProfileApi.php b/src/Api/ProfileApi.php
index 6e74faa6d..00689a09e 100644
--- a/src/Api/ProfileApi.php
+++ b/src/Api/ProfileApi.php
@@ -46,7 +46,7 @@ public function get(): Profile
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Profile::from($data);
+ return Profile::from($data, ['headers' => $response->getHeaders()]);
}
public function getMfa(): ProfileMfa
@@ -59,7 +59,7 @@ public function getMfa(): ProfileMfa
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ProfileMfa::from($data);
+ return ProfileMfa::from($data, ['headers' => $response->getHeaders()]);
}
public function startPermissionsEmulation(
@@ -73,7 +73,7 @@ public function startPermissionsEmulation(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Session::from($data);
+ return Session::from($data, ['headers' => $response->getHeaders()]);
}
public function stopPermissionsEmulation(): Session
@@ -86,7 +86,7 @@ public function stopPermissionsEmulation(): Session
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Session::from($data);
+ return Session::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -100,7 +100,7 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Profile::from($data);
+ return Profile::from($data, ['headers' => $response->getHeaders()]);
}
public function updateMfa(): ProfileMfa
@@ -113,6 +113,6 @@ public function updateMfa(): ProfileMfa
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ProfileMfa::from($data);
+ return ProfileMfa::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/PurchaseApi.php b/src/Api/PurchaseApi.php
index 4da3ee055..04adcc53b 100644
--- a/src/Api/PurchaseApi.php
+++ b/src/Api/PurchaseApi.php
@@ -41,6 +41,6 @@ public function readyToPay(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return array_map(fn (array $item): ReadyToPayMethods => ReadyToPayMethodsFactory::from($item), $data);
+ return array_map(fn (array $item): ReadyToPayMethods => ReadyToPayMethodsFactory::from($item, ['headers' => $response->getHeaders()]), $data);
}
}
diff --git a/src/Api/QuotesApi.php b/src/Api/QuotesApi.php
index 6cb368635..28992abe3 100644
--- a/src/Api/QuotesApi.php
+++ b/src/Api/QuotesApi.php
@@ -46,7 +46,7 @@ public function accept(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteFactory::from($data);
+ return QuoteFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function cancel(
@@ -64,7 +64,7 @@ public function cancel(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteFactory::from($data);
+ return QuoteFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function create(
@@ -78,7 +78,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteFactory::from($data);
+ return QuoteFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function createTimelineComment(
@@ -97,7 +97,7 @@ public function createTimelineComment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteTimeline::from($data);
+ return QuoteTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function deleteTimelineMessage(
@@ -118,7 +118,7 @@ public function deleteTimelineMessage(
public function get(
string $id,
?string $expand = null,
- ): Quote {
+ ): StreamInterface {
$pathParams = [
'{id}' => $id,
];
@@ -128,13 +128,10 @@ public function get(
];
$uri = str_replace(array_keys($pathParams), array_values($pathParams), '/quotes/{id}?') . http_build_query($queryParams);
- $request = new Request('GET', $uri, headers: [
- 'Accept' => 'application/json',
- ]);
- $response = $this->client->send($request);
- $data = Utils::jsonDecode((string) $response->getBody(), true);
+ $request = new Request('GET', $uri);
+ $response = $this->client->send($request, ['allow_redirects' => ['refer' => true]]);
- return QuoteFactory::from($data);
+ return $response->getBody();
}
public function getPdf(
@@ -184,10 +181,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Quote => QuoteFactory::from($item), $data),
+ array_map(fn (array $item): Quote => QuoteFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -246,10 +246,13 @@ public function getAllTimelineMessages(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): QuoteTimeline => QuoteTimeline::from($item), $data),
+ array_map(fn (array $item): QuoteTimeline => QuoteTimeline::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -296,7 +299,7 @@ public function getTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteTimeline::from($data);
+ return QuoteTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function issue(
@@ -314,7 +317,7 @@ public function issue(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteFactory::from($data);
+ return QuoteFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function patch(
@@ -333,7 +336,7 @@ public function patch(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteFactory::from($data);
+ return QuoteFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function recall(
@@ -351,7 +354,7 @@ public function recall(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteFactory::from($data);
+ return QuoteFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function reject(
@@ -369,7 +372,7 @@ public function reject(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteFactory::from($data);
+ return QuoteFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -388,6 +391,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return QuoteFactory::from($data);
+ return QuoteFactory::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/ReportsApi.php b/src/Api/ReportsApi.php
index e7cfab1b3..e2070f453 100644
--- a/src/Api/ReportsApi.php
+++ b/src/Api/ReportsApi.php
@@ -26,6 +26,7 @@
use Rebilly\Sdk\Model\GetKycAcceptanceSummaryReportResponse;
use Rebilly\Sdk\Model\JournalSummaryReport;
use Rebilly\Sdk\Model\RenewalSales;
+use Rebilly\Sdk\Model\ReportAmlChecks;
use Rebilly\Sdk\Model\ReportAnnualRecurringRevenue;
use Rebilly\Sdk\Model\ReportDeclinedTransactions;
use Rebilly\Sdk\Model\ReportDeferredRevenue;
@@ -52,6 +53,31 @@ public function __construct(protected ?ClientInterface $client)
{
}
+ public function getAmlChecks(
+ ?DateTimeImmutable $periodStart = null,
+ ?DateTimeImmutable $periodEnd = null,
+ ?string $metric = null,
+ ?bool $includePropagatedResults = null,
+ ?string $filter = null,
+ ): ReportAmlChecks {
+ $queryParams = [
+ 'periodStart' => $periodStart->format('Y-m-d\TH:i:s\Z'),
+ 'periodEnd' => $periodEnd->format('Y-m-d\TH:i:s\Z'),
+ 'metric' => $metric,
+ 'includePropagatedResults' => $includePropagatedResults,
+ 'filter' => $filter,
+ ];
+ $uri = '/experimental/reports/aml-checks?' . http_build_query($queryParams);
+
+ $request = new Request('GET', $uri, headers: [
+ 'Accept' => 'application/json',
+ ]);
+ $response = $this->client->send($request);
+ $data = Utils::jsonDecode((string) $response->getBody(), true);
+
+ return ReportAmlChecks::from($data, ['headers' => $response->getHeaders()]);
+ }
+
public function getAnnualRecurringRevenue(
string $currency,
string $periodStart,
@@ -74,7 +100,7 @@ public function getAnnualRecurringRevenue(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportAnnualRecurringRevenue::from($data);
+ return ReportAnnualRecurringRevenue::from($data, ['headers' => $response->getHeaders()]);
}
public function getApiLogSummary(
@@ -99,7 +125,7 @@ public function getApiLogSummary(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ApiLogSummary::from($data);
+ return ApiLogSummary::from($data, ['headers' => $response->getHeaders()]);
}
public function getCumulativeSubscriptions(
@@ -126,7 +152,7 @@ public function getCumulativeSubscriptions(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return CumulativeSubscriptions::from($data);
+ return CumulativeSubscriptions::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -152,7 +178,7 @@ public function getDashboardMetrics(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return array_map(fn (array $item): DashboardResponse => DashboardResponse::from($item), $data);
+ return array_map(fn (array $item): DashboardResponse => DashboardResponse::from($item, ['headers' => $response->getHeaders()]), $data);
}
public function getDccMarkup(
@@ -179,7 +205,7 @@ public function getDccMarkup(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return DccMarkup::from($data);
+ return DccMarkup::from($data, ['headers' => $response->getHeaders()]);
}
public function getDeclinedTransactions(
@@ -206,7 +232,7 @@ public function getDeclinedTransactions(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportDeclinedTransactions::from($data);
+ return ReportDeclinedTransactions::from($data, ['headers' => $response->getHeaders()]);
}
public function getDeferredRevenue(
@@ -231,7 +257,7 @@ public function getDeferredRevenue(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportDeferredRevenue::from($data);
+ return ReportDeferredRevenue::from($data, ['headers' => $response->getHeaders()]);
}
public function getDisputes(
@@ -256,7 +282,7 @@ public function getDisputes(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportDisputes::from($data);
+ return ReportDisputes::from($data, ['headers' => $response->getHeaders()]);
}
public function getEventsTriggeredSummary(
@@ -279,7 +305,7 @@ public function getEventsTriggeredSummary(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportEventsTriggeredSummary::from($data);
+ return ReportEventsTriggeredSummary::from($data, ['headers' => $response->getHeaders()]);
}
public function getFutureRenewals(
@@ -302,7 +328,7 @@ public function getFutureRenewals(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return FutureRenewals::from($data);
+ return FutureRenewals::from($data, ['headers' => $response->getHeaders()]);
}
public function getJournal(
@@ -333,7 +359,7 @@ public function getJournal(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportJournal::from($data);
+ return ReportJournal::from($data, ['headers' => $response->getHeaders()]);
}
public function getJournalSummary(
@@ -360,7 +386,7 @@ public function getJournalSummary(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return JournalSummaryReport::from($data);
+ return JournalSummaryReport::from($data, ['headers' => $response->getHeaders()]);
}
public function getKycAcceptanceSummary(
@@ -379,12 +405,12 @@ public function getKycAcceptanceSummary(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GetKycAcceptanceSummaryReportResponse::from($data);
+ return GetKycAcceptanceSummaryReportResponse::from($data, ['headers' => $response->getHeaders()]);
}
public function getKycRejectionSummary(
- DateTimeImmutable $periodStart,
- DateTimeImmutable $periodEnd,
+ ?DateTimeImmutable $periodStart = null,
+ ?DateTimeImmutable $periodEnd = null,
): ReportKycRejections {
$queryParams = [
'periodStart' => $periodStart->format('Y-m-d\TH:i:s\Z'),
@@ -398,12 +424,12 @@ public function getKycRejectionSummary(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportKycRejections::from($data);
+ return ReportKycRejections::from($data, ['headers' => $response->getHeaders()]);
}
public function getKycRequestSummary(
- DateTimeImmutable $periodStart,
- DateTimeImmutable $periodEnd,
+ ?DateTimeImmutable $periodStart = null,
+ ?DateTimeImmutable $periodEnd = null,
): ReportKycRequests {
$queryParams = [
'periodStart' => $periodStart->format('Y-m-d\TH:i:s\Z'),
@@ -417,7 +443,7 @@ public function getKycRequestSummary(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportKycRequests::from($data);
+ return ReportKycRequests::from($data, ['headers' => $response->getHeaders()]);
}
public function getMonthlyRecurringRevenue(
@@ -442,7 +468,7 @@ public function getMonthlyRecurringRevenue(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportMonthlyRecurringRevenue::from($data);
+ return ReportMonthlyRecurringRevenue::from($data, ['headers' => $response->getHeaders()]);
}
public function getRenewalSales(
@@ -465,7 +491,7 @@ public function getRenewalSales(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RenewalSales::from($data);
+ return RenewalSales::from($data, ['headers' => $response->getHeaders()]);
}
public function getRetentionPercentage(
@@ -498,7 +524,7 @@ public function getRetentionPercentage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportRetentionPercentage::from($data);
+ return ReportRetentionPercentage::from($data, ['headers' => $response->getHeaders()]);
}
public function getRetentionValue(
@@ -535,7 +561,7 @@ public function getRetentionValue(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportRetentionValue::from($data);
+ return ReportRetentionValue::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -561,7 +587,7 @@ public function getRevenueWaterfall(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return array_map(fn (array $item): ReportRevenueWaterfall => ReportRevenueWaterfall::from($item), $data);
+ return array_map(fn (array $item): ReportRevenueWaterfall => ReportRevenueWaterfall::from($item, ['headers' => $response->getHeaders()]), $data);
}
public function getSubscriptionCancellation(
@@ -588,7 +614,7 @@ public function getSubscriptionCancellation(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionCancellationReport::from($data);
+ return SubscriptionCancellationReport::from($data, ['headers' => $response->getHeaders()]);
}
public function getSubscriptionRenewal(
@@ -611,7 +637,7 @@ public function getSubscriptionRenewal(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionRenewal::from($data);
+ return SubscriptionRenewal::from($data, ['headers' => $response->getHeaders()]);
}
public function getTax(
@@ -636,7 +662,7 @@ public function getTax(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportTax::from($data);
+ return ReportTax::from($data, ['headers' => $response->getHeaders()]);
}
public function getTimeSeriesTransaction(
@@ -663,7 +689,7 @@ public function getTimeSeriesTransaction(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return TimeSeriesTransaction::from($data);
+ return TimeSeriesTransaction::from($data, ['headers' => $response->getHeaders()]);
}
public function getTransactions(
@@ -690,7 +716,7 @@ public function getTransactions(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportTransactions::from($data);
+ return ReportTransactions::from($data, ['headers' => $response->getHeaders()]);
}
public function getTransactionsTimeDispute(
@@ -717,7 +743,7 @@ public function getTransactionsTimeDispute(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportDisputeDelays::from($data);
+ return ReportDisputeDelays::from($data, ['headers' => $response->getHeaders()]);
}
public function getTriggeredEventRuleReport(
@@ -745,6 +771,6 @@ public function getTriggeredEventRuleReport(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ReportRulesMatchedSummary::from($data);
+ return ReportRulesMatchedSummary::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/RiskScoreRulesApi.php b/src/Api/RiskScoreRulesApi.php
index 3ded1c5c9..25e4517d9 100644
--- a/src/Api/RiskScoreRulesApi.php
+++ b/src/Api/RiskScoreRulesApi.php
@@ -36,7 +36,7 @@ public function getAll(): RiskScoreRules
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RiskScoreRules::from($data);
+ return RiskScoreRules::from($data, ['headers' => $response->getHeaders()]);
}
public function getAllBlocklistRules(): RiskScoreBlocklist
@@ -49,7 +49,7 @@ public function getAllBlocklistRules(): RiskScoreBlocklist
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RiskScoreBlocklist::from($data);
+ return RiskScoreBlocklist::from($data, ['headers' => $response->getHeaders()]);
}
public function updateRiskScoreBlocklistRules(
@@ -63,7 +63,7 @@ public function updateRiskScoreBlocklistRules(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RiskScoreBlocklist::from($data);
+ return RiskScoreBlocklist::from($data, ['headers' => $response->getHeaders()]);
}
public function updateRiskScoreRules(
@@ -77,6 +77,6 @@ public function updateRiskScoreRules(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return RiskScoreRules::from($data);
+ return RiskScoreRules::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/RolesApi.php b/src/Api/RolesApi.php
index 4b5130d09..86f7ec488 100644
--- a/src/Api/RolesApi.php
+++ b/src/Api/RolesApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Role::from($data);
+ return Role::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -73,7 +73,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Role::from($data);
+ return Role::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -104,10 +104,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Role => Role::from($item), $data),
+ array_map(fn (array $item): Role => Role::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -153,6 +156,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Role::from($data);
+ return Role::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/SearchApi.php b/src/Api/SearchApi.php
index 910f14d5e..b2208672f 100644
--- a/src/Api/SearchApi.php
+++ b/src/Api/SearchApi.php
@@ -51,10 +51,13 @@ public function get(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Search => Search::from($item), $data),
+ array_map(fn (array $item): Search => Search::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/SegmentsApi.php b/src/Api/SegmentsApi.php
index d52d691c8..e796c1fb8 100644
--- a/src/Api/SegmentsApi.php
+++ b/src/Api/SegmentsApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GridSegment::from($data);
+ return GridSegment::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GridSegment::from($data);
+ return GridSegment::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): GridSegment => GridSegment::from($item), $data),
+ array_map(fn (array $item): GridSegment => GridSegment::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -145,6 +148,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GridSegment::from($data);
+ return GridSegment::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/SendThroughAttributionApi.php b/src/Api/SendThroughAttributionApi.php
index 93cce7e68..4110b6471 100644
--- a/src/Api/SendThroughAttributionApi.php
+++ b/src/Api/SendThroughAttributionApi.php
@@ -43,6 +43,6 @@ public function getAll(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return array_map(fn (array $item): SendThroughAttribution => SendThroughAttribution::from($item), $data);
+ return array_map(fn (array $item): SendThroughAttribution => SendThroughAttribution::from($item, ['headers' => $response->getHeaders()]), $data);
}
}
diff --git a/src/Api/ServiceCredentialsApi.php b/src/Api/ServiceCredentialsApi.php
index 2fdea62e6..c57c22d2c 100644
--- a/src/Api/ServiceCredentialsApi.php
+++ b/src/Api/ServiceCredentialsApi.php
@@ -46,7 +46,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ServiceCredentialFactory::from($data);
+ return ServiceCredentialFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -66,7 +66,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ServiceCredentialFactory::from($data);
+ return ServiceCredentialFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -100,10 +100,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): ServiceCredential => ServiceCredentialFactory::from($item), $data),
+ array_map(fn (array $item): ServiceCredential => ServiceCredentialFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -168,10 +171,13 @@ public function getItems(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): GoogleSpreadsheet => GoogleSpreadsheet::from($item), $data),
+ array_map(fn (array $item): GoogleSpreadsheet => GoogleSpreadsheet::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -223,6 +229,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ServiceCredentialFactory::from($data);
+ return ServiceCredentialFactory::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/ShippingRatesApi.php b/src/Api/ShippingRatesApi.php
index fb5654cb3..0c3061a86 100644
--- a/src/Api/ShippingRatesApi.php
+++ b/src/Api/ShippingRatesApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ShippingRate::from($data);
+ return ShippingRate::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ShippingRate::from($data);
+ return ShippingRate::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): ShippingRate => ShippingRate::from($item), $data),
+ array_map(fn (array $item): ShippingRate => ShippingRate::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -145,6 +148,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ShippingRate::from($data);
+ return ShippingRate::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/StatusApi.php b/src/Api/StatusApi.php
index d10c730b0..6debf4492 100644
--- a/src/Api/StatusApi.php
+++ b/src/Api/StatusApi.php
@@ -35,6 +35,6 @@ public function get(): Status
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Status::from($data);
+ return Status::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/SubscriptionCancellationsApi.php b/src/Api/SubscriptionCancellationsApi.php
index 052f4ee63..de6de43cf 100644
--- a/src/Api/SubscriptionCancellationsApi.php
+++ b/src/Api/SubscriptionCancellationsApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionCancellation::from($data);
+ return SubscriptionCancellation::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -70,7 +70,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionCancellation::from($data);
+ return SubscriptionCancellation::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -97,10 +97,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): SubscriptionCancellation => SubscriptionCancellation::from($item), $data),
+ array_map(fn (array $item): SubscriptionCancellation => SubscriptionCancellation::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -142,7 +145,7 @@ public function patch(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionCancellation::from($data);
+ return SubscriptionCancellation::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -161,6 +164,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionCancellation::from($data);
+ return SubscriptionCancellation::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/SubscriptionPausesApi.php b/src/Api/SubscriptionPausesApi.php
index 018ddf0a8..af08c0639 100644
--- a/src/Api/SubscriptionPausesApi.php
+++ b/src/Api/SubscriptionPausesApi.php
@@ -55,7 +55,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionPause::from($data);
+ return SubscriptionPause::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -82,10 +82,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): SubscriptionPause => SubscriptionPause::from($item), $data),
+ array_map(fn (array $item): SubscriptionPause => SubscriptionPause::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -122,7 +125,7 @@ public function pause(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionPause::from($data);
+ return SubscriptionPause::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -141,6 +144,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionPause::from($data);
+ return SubscriptionPause::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/SubscriptionReactivationsApi.php b/src/Api/SubscriptionReactivationsApi.php
index f7db9cbd1..2b04b6a09 100644
--- a/src/Api/SubscriptionReactivationsApi.php
+++ b/src/Api/SubscriptionReactivationsApi.php
@@ -42,7 +42,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionReactivation::from($data);
+ return SubscriptionReactivation::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -69,10 +69,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): SubscriptionReactivation => SubscriptionReactivation::from($item), $data),
+ array_map(fn (array $item): SubscriptionReactivation => SubscriptionReactivation::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -109,6 +112,6 @@ public function reactivate(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionReactivation::from($data);
+ return SubscriptionReactivation::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/SubscriptionsApi.php b/src/Api/SubscriptionsApi.php
index 2fa0ebe08..150419a7b 100644
--- a/src/Api/SubscriptionsApi.php
+++ b/src/Api/SubscriptionsApi.php
@@ -57,7 +57,7 @@ public function changeItems(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionOrOneTimeSaleFactory::from($data);
+ return SubscriptionOrOneTimeSaleFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function create(
@@ -75,7 +75,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionOrOneTimeSaleFactory::from($data);
+ return SubscriptionOrOneTimeSaleFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function createInterimInvoice(
@@ -94,7 +94,7 @@ public function createInterimInvoice(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Invoice::from($data);
+ return Invoice::from($data, ['headers' => $response->getHeaders()]);
}
public function createTimelineComment(
@@ -113,7 +113,7 @@ public function createTimelineComment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderTimeline::from($data);
+ return OrderTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -163,7 +163,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionOrOneTimeSaleFactory::from($data);
+ return SubscriptionOrOneTimeSaleFactory::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -194,10 +194,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): SubscriptionOrOneTimeSale => SubscriptionOrOneTimeSaleFactory::from($item), $data),
+ array_map(fn (array $item): SubscriptionOrOneTimeSale => SubscriptionOrOneTimeSaleFactory::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -258,10 +261,13 @@ public function getAllTimelineMessages(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): OrderTimeline => OrderTimeline::from($item), $data),
+ array_map(fn (array $item): OrderTimeline => OrderTimeline::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -313,7 +319,7 @@ public function getAllUpcomingInvoices(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return array_map(fn (array $item): UpcomingInvoice => UpcomingInvoice::from($item), $data);
+ return array_map(fn (array $item): UpcomingInvoice => UpcomingInvoice::from($item, ['headers' => $response->getHeaders()]), $data);
}
public function getSubscriptionSummaryMetrics(
@@ -331,7 +337,7 @@ public function getSubscriptionSummaryMetrics(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionSummaryMetrics::from($data);
+ return SubscriptionSummaryMetrics::from($data, ['headers' => $response->getHeaders()]);
}
public function getTimelineMessage(
@@ -351,7 +357,7 @@ public function getTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return OrderTimeline::from($data);
+ return OrderTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function getUpcomingInvoice(
@@ -373,7 +379,7 @@ public function getUpcomingInvoice(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return UpcomingInvoice::from($data);
+ return UpcomingInvoice::from($data, ['headers' => $response->getHeaders()]);
}
public function issueEarlyUpcomingInvoice(
@@ -392,7 +398,7 @@ public function issueEarlyUpcomingInvoice(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return UpcomingInvoice::from($data);
+ return UpcomingInvoice::from($data, ['headers' => $response->getHeaders()]);
}
public function issueUpcomingInvoice(
@@ -413,7 +419,7 @@ public function issueUpcomingInvoice(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return UpcomingInvoice::from($data);
+ return UpcomingInvoice::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -436,7 +442,7 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionOrOneTimeSaleFactory::from($data);
+ return SubscriptionOrOneTimeSaleFactory::from($data, ['headers' => $response->getHeaders()]);
}
public function updateItem(
@@ -457,7 +463,7 @@ public function updateItem(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionOrOneTimeSaleItem::from($data);
+ return SubscriptionOrOneTimeSaleItem::from($data, ['headers' => $response->getHeaders()]);
}
public function void(
@@ -475,6 +481,6 @@ public function void(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return SubscriptionOrOneTimeSaleFactory::from($data);
+ return SubscriptionOrOneTimeSaleFactory::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/TagsApi.php b/src/Api/TagsApi.php
index b3a49c4cf..ec74a24b6 100644
--- a/src/Api/TagsApi.php
+++ b/src/Api/TagsApi.php
@@ -45,7 +45,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Tag::from($data);
+ return Tag::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -76,7 +76,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Tag::from($data);
+ return Tag::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -105,10 +105,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Tag => Tag::from($item), $data),
+ array_map(fn (array $item): Tag => Tag::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -326,6 +329,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Tag::from($data);
+ return Tag::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/TagsRulesApi.php b/src/Api/TagsRulesApi.php
index 4da493c9a..11e82593d 100644
--- a/src/Api/TagsRulesApi.php
+++ b/src/Api/TagsRulesApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return TagUntagRule::from($data);
+ return TagUntagRule::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return TagUntagRule::from($data);
+ return TagUntagRule::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): TagUntagRule => TagUntagRule::from($item), $data),
+ array_map(fn (array $item): TagUntagRule => TagUntagRule::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -145,6 +148,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return TagUntagRule::from($data);
+ return TagUntagRule::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/TrackingApi.php b/src/Api/TrackingApi.php
index b7ce839ed..60a485115 100644
--- a/src/Api/TrackingApi.php
+++ b/src/Api/TrackingApi.php
@@ -58,10 +58,13 @@ public function getAllApiLogs(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): ApiTracking => ApiTracking::from($item), $data),
+ array_map(fn (array $item): ApiTracking => ApiTracking::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -117,10 +120,13 @@ public function getAllListsChangesHistory(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): ValueList => ValueList::from($item), $data),
+ array_map(fn (array $item): ValueList => ValueList::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -174,10 +180,13 @@ public function getAllTaxTrackingLogs(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): TaxTracking => TaxTracking::from($item), $data),
+ array_map(fn (array $item): TaxTracking => TaxTracking::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -231,10 +240,13 @@ public function getAllWebhookTrackingLogs(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): WebhookTracking => WebhookTracking::from($item), $data),
+ array_map(fn (array $item): WebhookTracking => WebhookTracking::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -277,7 +289,7 @@ public function getApiLog(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ApiTracking::from($data);
+ return ApiTracking::from($data, ['headers' => $response->getHeaders()]);
}
public function getTaxTrackingLog(
@@ -295,7 +307,7 @@ public function getTaxTrackingLog(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return TaxTracking::from($data);
+ return TaxTracking::from($data, ['headers' => $response->getHeaders()]);
}
public function getWebhookTrackingLog(
@@ -313,7 +325,7 @@ public function getWebhookTrackingLog(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return WebhookTracking::from($data);
+ return WebhookTracking::from($data, ['headers' => $response->getHeaders()]);
}
public function resendWebhook(
diff --git a/src/Api/TransactionsApi.php b/src/Api/TransactionsApi.php
index 769b774f3..8e85cc2f8 100644
--- a/src/Api/TransactionsApi.php
+++ b/src/Api/TransactionsApi.php
@@ -48,7 +48,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Transaction::from($data);
+ return Transaction::from($data, ['headers' => $response->getHeaders()]);
}
public function createTimelineComment(
@@ -67,7 +67,7 @@ public function createTimelineComment(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return TransactionTimeline::from($data);
+ return TransactionTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function deleteTimelineMessage(
@@ -104,7 +104,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Transaction::from($data);
+ return Transaction::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -135,10 +135,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Transaction => Transaction::from($item), $data),
+ array_map(fn (array $item): Transaction => Transaction::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -199,10 +202,13 @@ public function getAllTimelineMessages(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): TransactionTimeline => TransactionTimeline::from($item), $data),
+ array_map(fn (array $item): TransactionTimeline => TransactionTimeline::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -249,7 +255,7 @@ public function getTimelineMessage(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return TransactionTimeline::from($data);
+ return TransactionTimeline::from($data, ['headers' => $response->getHeaders()]);
}
public function patch(
@@ -268,7 +274,7 @@ public function patch(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Transaction::from($data);
+ return Transaction::from($data, ['headers' => $response->getHeaders()]);
}
public function query(
@@ -286,7 +292,7 @@ public function query(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return TransactionQuery::from($data);
+ return TransactionQuery::from($data, ['headers' => $response->getHeaders()]);
}
public function refund(
@@ -309,7 +315,7 @@ public function refund(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Transaction::from($data);
+ return Transaction::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -328,6 +334,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Transaction::from($data);
+ return Transaction::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/UsagesApi.php b/src/Api/UsagesApi.php
index 20bdad46b..9e51cea05 100644
--- a/src/Api/UsagesApi.php
+++ b/src/Api/UsagesApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Usage::from($data);
+ return Usage::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Usage::from($data);
+ return Usage::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Usage => Usage::from($item), $data),
+ array_map(fn (array $item): Usage => Usage::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
diff --git a/src/Api/UsersApi.php b/src/Api/UsersApi.php
index 620f702db..4b8c0f22c 100644
--- a/src/Api/UsersApi.php
+++ b/src/Api/UsersApi.php
@@ -39,7 +39,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return User::from($data);
+ return User::from($data, ['headers' => $response->getHeaders()]);
}
public function get(
@@ -57,7 +57,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return User::from($data);
+ return User::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -86,10 +86,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): User => User::from($item), $data),
+ array_map(fn (array $item): User => User::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -132,7 +135,7 @@ public function getMfa(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return ProfileMfa::from($data);
+ return ProfileMfa::from($data, ['headers' => $response->getHeaders()]);
}
public function update(
@@ -151,6 +154,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return User::from($data);
+ return User::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/WebhooksApi.php b/src/Api/WebhooksApi.php
index 43d5d80aa..ccb91e414 100644
--- a/src/Api/WebhooksApi.php
+++ b/src/Api/WebhooksApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GlobalWebhook::from($data);
+ return GlobalWebhook::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GlobalWebhook::from($data);
+ return GlobalWebhook::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -94,10 +94,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): GlobalWebhook => GlobalWebhook::from($item), $data),
+ array_map(fn (array $item): GlobalWebhook => GlobalWebhook::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -137,6 +140,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return GlobalWebhook::from($data);
+ return GlobalWebhook::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Api/WebsitesApi.php b/src/Api/WebsitesApi.php
index 8f4a5f9cb..d61909d0f 100644
--- a/src/Api/WebsitesApi.php
+++ b/src/Api/WebsitesApi.php
@@ -38,7 +38,7 @@ public function create(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Website::from($data);
+ return Website::from($data, ['headers' => $response->getHeaders()]);
}
public function delete(
@@ -69,7 +69,7 @@ public function get(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Website::from($data);
+ return Website::from($data, ['headers' => $response->getHeaders()]);
}
/**
@@ -98,10 +98,13 @@ public function getAll(
$data = Utils::jsonDecode((string) $response->getBody(), true);
return new Collection(
- array_map(fn (array $item): Website => Website::from($item), $data),
+ array_map(fn (array $item): Website => Website::from($item, ['headers' => $response->getHeaders()]), $data),
(int) $response->getHeaderLine(Collection::HEADER_LIMIT),
(int) $response->getHeaderLine(Collection::HEADER_OFFSET),
(int) $response->getHeaderLine(Collection::HEADER_TOTAL),
+ [
+ 'headers' => $response->getHeaders(),
+ ]
);
}
@@ -145,6 +148,6 @@ public function update(
$response = $this->client->send($request);
$data = Utils::jsonDecode((string) $response->getBody(), true);
- return Website::from($data);
+ return Website::from($data, ['headers' => $response->getHeaders()]);
}
}
diff --git a/src/Collection.php b/src/Collection.php
index fb8ebcb87..3d159ea32 100644
--- a/src/Collection.php
+++ b/src/Collection.php
@@ -20,6 +20,7 @@
use IteratorAggregate;
use JsonSerializable;
use LogicException;
+use Rebilly\Sdk\Trait\HasMetadata;
use Traversable;
/**
@@ -29,6 +30,8 @@
*/
class Collection implements JsonSerializable, IteratorAggregate, ArrayAccess, Countable
{
+ use HasMetadata;
+
public const HEADER_LIMIT = 'Pagination-Limit';
public const HEADER_OFFSET = 'Pagination-Offset';
@@ -40,13 +43,16 @@ class Collection implements JsonSerializable, IteratorAggregate, ArrayAccess, Co
* @param int $limit
* @param int $offset
* @param int $total
+ * @param array $metadata
*/
public function __construct(
private array $items,
private int $limit,
private int $offset,
private int $total,
+ array $metadata = [],
) {
+ $this->setMetadata($metadata);
}
/**
diff --git a/src/Middleware/BaseUri.php b/src/Middleware/BaseUri.php
index 40c5b8ddc..0607b96e3 100644
--- a/src/Middleware/BaseUri.php
+++ b/src/Middleware/BaseUri.php
@@ -70,7 +70,10 @@ private function adjustUriPath(string $requestPath): string
}
$basePath .= '/';
if ($this->organizationId) {
- $basePath .= 'organizations/' . $this->organizationId . '/';
+ $organizationPrefix = 'organizations/' . $this->organizationId . '/';
+ if (!str_starts_with(ltrim($requestPath, '/'), $organizationPrefix)) {
+ $basePath .= $organizationPrefix;
+ }
}
return $basePath . ltrim($requestPath, '/');
diff --git a/src/Model/A1Gateway.php b/src/Model/A1Gateway.php
index a358b8960..0fa5da676 100644
--- a/src/Model/A1Gateway.php
+++ b/src/Model/A1Gateway.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class A1Gateway extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'A1Gateway',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): A1GatewayCredentials
diff --git a/src/Model/A1GatewayCredentials.php b/src/Model/A1GatewayCredentials.php
index e65f92c7e..68455c7dc 100644
--- a/src/Model/A1GatewayCredentials.php
+++ b/src/Model/A1GatewayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class A1GatewayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accountId', $data)) {
$this->setAccountId($data['accountId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccountId(): string
diff --git a/src/Model/ACI.php b/src/Model/ACI.php
index b3e126dbd..3e26ec0ef 100644
--- a/src/Model/ACI.php
+++ b/src/Model/ACI.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ACI extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ACI',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ACICredentials
diff --git a/src/Model/ACICredentials.php b/src/Model/ACICredentials.php
index fe693f276..cb8096652 100644
--- a/src/Model/ACICredentials.php
+++ b/src/Model/ACICredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ACICredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('entityId', $data)) {
$this->setEntityId($data['entityId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('accessToken', $data)) {
$this->setAccessToken($data['accessToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEntityId(): string
diff --git a/src/Model/ACISettings.php b/src/Model/ACISettings.php
index 5ee9d28c5..895cc0580 100644
--- a/src/Model/ACISettings.php
+++ b/src/Model/ACISettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ACISettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('url', $data)) {
$this->setUrl($data['url']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUrl(): ?string
diff --git a/src/Model/AML.php b/src/Model/AML.php
index ef1027711..0b105ab88 100644
--- a/src/Model/AML.php
+++ b/src/Model/AML.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AML implements JsonSerializable
{
+ use HasMetadata;
+
public const SOURCE_TYPE_PEP = 'pep';
public const SOURCE_TYPE_SANCTIONS = 'sanctions';
@@ -43,7 +46,7 @@ class AML implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('firstName', $data)) {
$this->setFirstName($data['firstName']);
@@ -99,11 +102,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFirstName(): ?string
diff --git a/src/Model/AMLAddress.php b/src/Model/AMLAddress.php
index 02cc822c5..2435757ab 100644
--- a/src/Model/AMLAddress.php
+++ b/src/Model/AMLAddress.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AMLAddress implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('address', $data)) {
$this->setAddress($data['address']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('birthplace', $data)) {
$this->setBirthplace($data['birthplace']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAddress(): ?string
diff --git a/src/Model/AMLAliases.php b/src/Model/AMLAliases.php
index 364c6c0c8..0e7dc8b2f 100644
--- a/src/Model/AMLAliases.php
+++ b/src/Model/AMLAliases.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AMLAliases implements JsonSerializable
{
+ use HasMetadata;
+
public const AUTHENTICITY_STRONG = 'strong';
public const AUTHENTICITY_WEAK = 'weak';
@@ -26,7 +29,7 @@ class AMLAliases implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('firstName', $data)) {
$this->setFirstName($data['firstName']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('authenticity', $data)) {
$this->setAuthenticity($data['authenticity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFirstName(): ?string
diff --git a/src/Model/AMLMatchDetails.php b/src/Model/AMLMatchDetails.php
index 859fc0db9..181b896f7 100644
--- a/src/Model/AMLMatchDetails.php
+++ b/src/Model/AMLMatchDetails.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AMLMatchDetails implements JsonSerializable
{
+ use HasMetadata;
+
public const CONFIDENCE_FACTORS_EXACT_COUNTRY = 'confidence_exact_country';
public const CONFIDENCE_FACTORS_MISMATCH_COUNTRY = 'confidence_mismatch_country';
@@ -72,7 +75,7 @@ class AMLMatchDetails implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('confidenceFactors', $data)) {
$this->setConfidenceFactors($data['confidenceFactors']);
@@ -80,11 +83,12 @@ public function __construct(array $data = [])
if (array_key_exists('matchCriteria', $data)) {
$this->setMatchCriteria($data['matchCriteria']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/AMLPassport.php b/src/Model/AMLPassport.php
index 6040dc493..befee6be9 100644
--- a/src/Model/AMLPassport.php
+++ b/src/Model/AMLPassport.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AMLPassport implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('number', $data)) {
$this->setNumber($data['number']);
@@ -29,11 +32,12 @@ public function __construct(array $data = [])
if (array_key_exists('registrationDate', $data)) {
$this->setRegistrationDate($data['registrationDate']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getNumber(): ?string
diff --git a/src/Model/AchPlaidFeature.php b/src/Model/AchPlaidFeature.php
index 587aa183e..27c174d1b 100644
--- a/src/Model/AchPlaidFeature.php
+++ b/src/Model/AchPlaidFeature.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class AchPlaidFeature implements ReadyToPayAchMethodFeature
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('linkToken', $data)) {
$this->setLinkToken($data['linkToken']);
@@ -29,11 +32,12 @@ public function __construct(array $data = [])
if (array_key_exists('expirationTime', $data)) {
$this->setExpirationTime($data['expirationTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/Acl.php b/src/Model/Acl.php
index ca85b0d68..2e914319e 100644
--- a/src/Model/Acl.php
+++ b/src/Model/Acl.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Acl implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('scope', $data)) {
$this->setScope($data['scope']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('permissions', $data)) {
$this->setPermissions($data['permissions']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getScope(): ApiKeyScope
diff --git a/src/Model/AdjustPaymentMethodFactory.php b/src/Model/AdjustPaymentMethodFactory.php
index c0f10c145..37f269b4b 100644
--- a/src/Model/AdjustPaymentMethodFactory.php
+++ b/src/Model/AdjustPaymentMethodFactory.php
@@ -18,154 +18,154 @@
class AdjustPaymentMethodFactory
{
- public static function from(array $data = []): AdjustPaymentMethod
+ public static function from(array $data = [], array $metadata = []): AdjustPaymentMethod
{
return match ($data['paymentMethod']) {
- 'ach' => AdjustReadyToPayAch::from($data),
- 'AdvCash' => AdjustReadyToPayGeneric::from($data),
- 'Alfa-click' => AdjustReadyToPayGeneric::from($data),
- 'Alipay' => AdjustReadyToPayGeneric::from($data),
- 'AstroPay Card' => AdjustReadyToPayGeneric::from($data),
- 'AstroPay-GO' => AdjustReadyToPayGeneric::from($data),
- 'Baloto' => AdjustReadyToPayGeneric::from($data),
- 'Bancontact' => AdjustReadyToPayGeneric::from($data),
- 'Bancontact-mobile' => AdjustReadyToPayGeneric::from($data),
- 'BankReferenced' => AdjustReadyToPayGeneric::from($data),
- 'Beeline' => AdjustReadyToPayGeneric::from($data),
- 'Belfius-direct-net' => AdjustReadyToPayGeneric::from($data),
- 'Bizum' => AdjustReadyToPayGeneric::from($data),
- 'Boleto' => AdjustReadyToPayGeneric::from($data),
- 'CASHlib' => AdjustReadyToPayGeneric::from($data),
- 'CODVoucher' => AdjustReadyToPayGeneric::from($data),
- 'CashToCode' => AdjustReadyToPayGeneric::from($data),
- 'China UnionPay' => AdjustReadyToPayGeneric::from($data),
- 'Cleo' => AdjustReadyToPayGeneric::from($data),
- 'Conekta-oxxo' => AdjustReadyToPayGeneric::from($data),
- 'Cupon-de-pagos' => AdjustReadyToPayGeneric::from($data),
- 'EPS' => AdjustReadyToPayGeneric::from($data),
- 'Efecty' => AdjustReadyToPayGeneric::from($data),
- 'FasterPay' => AdjustReadyToPayGeneric::from($data),
- 'Flexepin' => AdjustReadyToPayGeneric::from($data),
- 'Giropay' => AdjustReadyToPayGeneric::from($data),
- 'Google Pay' => AdjustReadyToPayGeneric::from($data),
- 'Gpaysafe' => AdjustReadyToPayGeneric::from($data),
- 'ING-homepay' => AdjustReadyToPayGeneric::from($data),
- 'INOVAPAY-pin' => AdjustReadyToPayGeneric::from($data),
- 'INOVAPAY-wallet' => AdjustReadyToPayGeneric::from($data),
- 'InstaDebit' => AdjustReadyToPayGeneric::from($data),
- 'InstantPayments' => AdjustReadyToPayGeneric::from($data),
- 'Interac' => AdjustReadyToPayGeneric::from($data),
- 'Interac-eTransfer' => AdjustReadyToPayGeneric::from($data),
- 'Interac-online' => AdjustReadyToPayGeneric::from($data),
- 'Jeton' => AdjustReadyToPayGeneric::from($data),
- 'KNOT' => AdjustReadyToPayGeneric::from($data),
- 'Khelocard' => AdjustReadyToPayGeneric::from($data),
- 'Klarna' => AdjustReadyToPayGeneric::from($data),
- 'MTS' => AdjustReadyToPayGeneric::from($data),
- 'Matrix' => AdjustReadyToPayGeneric::from($data),
- 'MaxiCash' => AdjustReadyToPayGeneric::from($data),
- 'Megafon' => AdjustReadyToPayGeneric::from($data),
- 'MiFinity-eWallet' => AdjustReadyToPayGeneric::from($data),
- 'MuchBetter' => AdjustReadyToPayGeneric::from($data),
- 'Multibanco' => AdjustReadyToPayGeneric::from($data),
- 'Neosurf' => AdjustReadyToPayGeneric::from($data),
- 'Netbanking' => AdjustReadyToPayGeneric::from($data),
- 'Neteller' => AdjustReadyToPayGeneric::from($data),
- 'Nordea-Solo' => AdjustReadyToPayGeneric::from($data),
- 'OXXO' => AdjustReadyToPayGeneric::from($data),
- 'OchaPay' => AdjustReadyToPayGeneric::from($data),
- 'Onlineueberweisen' => AdjustReadyToPayGeneric::from($data),
- 'P24' => AdjustReadyToPayGeneric::from($data),
- 'POLi' => AdjustReadyToPayGeneric::from($data),
- 'Pagadito' => AdjustReadyToPayGeneric::from($data),
- 'PagoEffectivo' => AdjustReadyToPayGeneric::from($data),
- 'Pagsmile-deposit-express' => AdjustReadyToPayGeneric::from($data),
- 'Pagsmile-lottery' => AdjustReadyToPayGeneric::from($data),
- 'Pay4Fun' => AdjustReadyToPayGeneric::from($data),
- 'PayCash' => AdjustReadyToPayGeneric::from($data),
- 'PayTabs' => AdjustReadyToPayGeneric::from($data),
- 'Payeer' => AdjustReadyToPayGeneric::from($data),
- 'PaymentAsia-crypto' => AdjustReadyToPayGeneric::from($data),
- 'Paymero' => AdjustReadyToPayGeneric::from($data),
- 'Paynote' => AdjustReadyToPayGeneric::from($data),
- 'Paysafecard' => AdjustReadyToPayGeneric::from($data),
- 'Paysafecash' => AdjustReadyToPayGeneric::from($data),
- 'Perfect-money' => AdjustReadyToPayGeneric::from($data),
- 'PhonePe' => AdjustReadyToPayGeneric::from($data),
- 'Piastrix' => AdjustReadyToPayGeneric::from($data),
- 'PinPay' => AdjustReadyToPayGeneric::from($data),
- 'PostFinance-card' => AdjustReadyToPayGeneric::from($data),
- 'PostFinance-e-finance' => AdjustReadyToPayGeneric::from($data),
- 'QIWI' => AdjustReadyToPayGeneric::from($data),
- 'QPay' => AdjustReadyToPayGeneric::from($data),
- 'QQPay' => AdjustReadyToPayGeneric::from($data),
- 'Resurs' => AdjustReadyToPayGeneric::from($data),
- 'SEPA' => AdjustReadyToPayGeneric::from($data),
- 'SMSVoucher' => AdjustReadyToPayGeneric::from($data),
- 'SafetyPay' => AdjustReadyToPayGeneric::from($data),
- 'Skrill' => AdjustReadyToPayGeneric::from($data),
- 'Skrill Rapid Transfer' => AdjustReadyToPayGeneric::from($data),
- 'Sofort' => AdjustReadyToPayGeneric::from($data),
- 'SparkPay' => AdjustReadyToPayGeneric::from($data),
- 'Tele2' => AdjustReadyToPayGeneric::from($data),
- 'Terminaly-RF' => AdjustReadyToPayGeneric::from($data),
- 'ToditoCash-card' => AdjustReadyToPayGeneric::from($data),
- 'Trustly' => AdjustReadyToPayGeneric::from($data),
- 'UPI' => AdjustReadyToPayGeneric::from($data),
- 'UPayCard' => AdjustReadyToPayGeneric::from($data),
- 'USD-coin' => AdjustReadyToPayGeneric::from($data),
- 'VCreditos' => AdjustReadyToPayGeneric::from($data),
- 'VenusPoint' => AdjustReadyToPayGeneric::from($data),
- 'WeChat Pay' => AdjustReadyToPayGeneric::from($data),
- 'Webmoney' => AdjustReadyToPayGeneric::from($data),
- 'Webpay' => AdjustReadyToPayGeneric::from($data),
- 'Webpay Card' => AdjustReadyToPayGeneric::from($data),
- 'Webpay-2' => AdjustReadyToPayGeneric::from($data),
- 'XPay-P2P' => AdjustReadyToPayGeneric::from($data),
- 'XPay-QR' => AdjustReadyToPayGeneric::from($data),
- 'Yandex-money' => AdjustReadyToPayGeneric::from($data),
- 'Zimpler' => AdjustReadyToPayGeneric::from($data),
- 'Zotapay' => AdjustReadyToPayGeneric::from($data),
- 'bank-transfer' => AdjustReadyToPayGeneric::from($data),
- 'bank-transfer-2' => AdjustReadyToPayGeneric::from($data),
- 'bank-transfer-3' => AdjustReadyToPayGeneric::from($data),
- 'bank-transfer-4' => AdjustReadyToPayGeneric::from($data),
- 'bank-transfer-5' => AdjustReadyToPayGeneric::from($data),
- 'bank-transfer-6' => AdjustReadyToPayGeneric::from($data),
- 'bank-transfer-7' => AdjustReadyToPayGeneric::from($data),
- 'bank-transfer-8' => AdjustReadyToPayGeneric::from($data),
- 'bank-transfer-9' => AdjustReadyToPayGeneric::from($data),
- 'bitcoin' => AdjustReadyToPayGeneric::from($data),
- 'cash' => AdjustReadyToPayGeneric::from($data),
- 'cash-deposit' => AdjustReadyToPayGeneric::from($data),
- 'check' => AdjustReadyToPayGeneric::from($data),
- 'cryptocurrency' => AdjustReadyToPayGeneric::from($data),
- 'domestic-cards' => AdjustReadyToPayGeneric::from($data),
- 'ePay.bg' => AdjustReadyToPayGeneric::from($data),
- 'eZeeWallet' => AdjustReadyToPayGeneric::from($data),
- 'echeck' => AdjustReadyToPayGeneric::from($data),
- 'ecoPayz' => AdjustReadyToPayGeneric::from($data),
- 'ecoVoucher' => AdjustReadyToPayGeneric::from($data),
- 'iDEAL' => AdjustReadyToPayGeneric::from($data),
- 'iDebit' => AdjustReadyToPayGeneric::from($data),
- 'iWallet' => AdjustReadyToPayGeneric::from($data),
- 'instant-bank-transfer' => AdjustReadyToPayGeneric::from($data),
- 'invoice' => AdjustReadyToPayGeneric::from($data),
- 'jpay' => AdjustReadyToPayGeneric::from($data),
- 'loonie' => AdjustReadyToPayGeneric::from($data),
- 'miscellaneous' => AdjustReadyToPayGeneric::from($data),
- 'online-bank-transfer' => AdjustReadyToPayGeneric::from($data),
- 'oriental-wallet' => AdjustReadyToPayGeneric::from($data),
- 'phone' => AdjustReadyToPayGeneric::from($data),
- 'plaid-account' => AdjustReadyToPayGeneric::from($data),
- 'rapyd-checkout' => AdjustReadyToPayGeneric::from($data),
- 'swift-dbt' => AdjustReadyToPayGeneric::from($data),
- 'voucher' => AdjustReadyToPayGeneric::from($data),
- 'voucher-2' => AdjustReadyToPayGeneric::from($data),
- 'voucher-3' => AdjustReadyToPayGeneric::from($data),
- 'voucher-4' => AdjustReadyToPayGeneric::from($data),
- 'payment-card' => AdjustReadyToPayPaymentCard::from($data),
- 'paypal' => AdjustReadyToPayPaypal::from($data),
+ 'ach' => AdjustReadyToPayAch::from($data, $metadata),
+ 'AdvCash' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Alfa-click' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Alipay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'AstroPay Card' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'AstroPay-GO' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Baloto' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Bancontact' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Bancontact-mobile' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'BankReferenced' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Beeline' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Belfius-direct-net' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Bizum' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Boleto' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'CASHlib' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'CODVoucher' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'CashToCode' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'China UnionPay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Cleo' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Conekta-oxxo' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Cupon-de-pagos' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'EPS' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Efecty' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'FasterPay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Flexepin' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Giropay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Google Pay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Gpaysafe' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'ING-homepay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'INOVAPAY-pin' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'INOVAPAY-wallet' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'InstaDebit' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'InstantPayments' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Interac' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Interac-eTransfer' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Interac-online' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Jeton' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'KNOT' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Khelocard' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Klarna' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'MTS' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Matrix' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'MaxiCash' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Megafon' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'MiFinity-eWallet' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'MuchBetter' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Multibanco' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Neosurf' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Netbanking' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Neteller' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Nordea-Solo' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'OXXO' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'OchaPay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Onlineueberweisen' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'P24' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'POLi' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Pagadito' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'PagoEffectivo' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Pagsmile-deposit-express' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Pagsmile-lottery' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Pay4Fun' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'PayCash' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'PayTabs' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Payeer' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'PaymentAsia-crypto' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Paymero' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Paynote' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Paysafecard' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Paysafecash' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Perfect-money' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'PhonePe' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Piastrix' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'PinPay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'PostFinance-card' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'PostFinance-e-finance' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'QIWI' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'QPay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'QQPay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Resurs' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'SEPA' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'SMSVoucher' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'SafetyPay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Skrill' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Skrill Rapid Transfer' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Sofort' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'SparkPay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Tele2' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Terminaly-RF' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'ToditoCash-card' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Trustly' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'UPI' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'UPayCard' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'USD-coin' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'VCreditos' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'VenusPoint' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'WeChat Pay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Webmoney' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Webpay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Webpay Card' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Webpay-2' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'XPay-P2P' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'XPay-QR' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Yandex-money' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Zimpler' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'Zotapay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bank-transfer' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bank-transfer-2' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bank-transfer-3' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bank-transfer-4' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bank-transfer-5' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bank-transfer-6' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bank-transfer-7' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bank-transfer-8' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bank-transfer-9' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'bitcoin' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'cash' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'cash-deposit' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'check' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'cryptocurrency' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'domestic-cards' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'ePay.bg' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'eZeeWallet' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'echeck' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'ecoPayz' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'ecoVoucher' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'iDEAL' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'iDebit' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'iWallet' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'instant-bank-transfer' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'invoice' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'jpay' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'loonie' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'miscellaneous' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'online-bank-transfer' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'oriental-wallet' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'phone' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'plaid-account' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'rapyd-checkout' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'swift-dbt' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'voucher' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'voucher-2' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'voucher-3' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'voucher-4' => AdjustReadyToPayGeneric::from($data, $metadata),
+ 'payment-card' => AdjustReadyToPayPaymentCard::from($data, $metadata),
+ 'paypal' => AdjustReadyToPayPaypal::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/AdjustReadyToPayAch.php b/src/Model/AdjustReadyToPayAch.php
index 5a3511e4e..1f33fc4ae 100644
--- a/src/Model/AdjustReadyToPayAch.php
+++ b/src/Model/AdjustReadyToPayAch.php
@@ -14,22 +14,27 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AdjustReadyToPayAch implements AdjustPaymentMethod
{
+ use HasMetadata;
+
public const FEATURE_PLAID = 'Plaid';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('feature', $data)) {
$this->setFeature($data['feature']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentMethod(): string
diff --git a/src/Model/AdjustReadyToPayGeneric.php b/src/Model/AdjustReadyToPayGeneric.php
index 50f6132a3..6ab7a02af 100644
--- a/src/Model/AdjustReadyToPayGeneric.php
+++ b/src/Model/AdjustReadyToPayGeneric.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AdjustReadyToPayGeneric implements AdjustPaymentMethod
{
+ use HasMetadata;
+
public const PAYMENT_METHOD_CASH = 'cash';
public const PAYMENT_METHOD_CHECK = 'check';
@@ -88,8 +92,6 @@ class AdjustReadyToPayGeneric implements AdjustPaymentMethod
public const PAYMENT_METHOD_CUPON_DE_PAGOS = 'Cupon-de-pagos';
- public const PAYMENT_METHOD_CRYPTOCURRENCY = 'cryptocurrency';
-
public const PAYMENT_METHOD_DOMESTIC_CARDS = 'domestic-cards';
public const PAYMENT_METHOD_DIRECTA24_CARD = 'Directa24Card';
@@ -296,6 +298,8 @@ class AdjustReadyToPayGeneric implements AdjustPaymentMethod
public const PAYMENT_METHOD_VENUS_POINT = 'VenusPoint';
+ public const PAYMENT_METHOD_VIVA = 'Viva';
+
public const PAYMENT_METHOD_VOUCHER = 'voucher';
public const PAYMENT_METHOD_VOUCHER2 = 'voucher-2';
@@ -332,7 +336,7 @@ class AdjustReadyToPayGeneric implements AdjustPaymentMethod
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentMethod', $data)) {
$this->setPaymentMethod($data['paymentMethod']);
@@ -340,11 +344,12 @@ public function __construct(array $data = [])
if (array_key_exists('feature', $data)) {
$this->setFeature($data['feature']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentMethod(): string
diff --git a/src/Model/AdjustReadyToPayPaymentCard.php b/src/Model/AdjustReadyToPayPaymentCard.php
index e83577488..2716ca342 100644
--- a/src/Model/AdjustReadyToPayPaymentCard.php
+++ b/src/Model/AdjustReadyToPayPaymentCard.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AdjustReadyToPayPaymentCard implements AdjustPaymentMethod
{
+ use HasMetadata;
+
public const FEATURE_APPLE_PAY = 'Apple Pay';
public const FEATURE_GOOGLE_PAY = 'Google Pay';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('feature', $data)) {
$this->setFeature($data['feature']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentMethod(): string
diff --git a/src/Model/AdjustReadyToPayPaypal.php b/src/Model/AdjustReadyToPayPaypal.php
index faded5fd4..fd9e94e16 100644
--- a/src/Model/AdjustReadyToPayPaypal.php
+++ b/src/Model/AdjustReadyToPayPaypal.php
@@ -14,22 +14,27 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AdjustReadyToPayPaypal implements AdjustPaymentMethod
{
+ use HasMetadata;
+
public const FEATURE_PAY_PAL_BILLING_AGREEMENT = 'PayPal billing agreement';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('feature', $data)) {
$this->setFeature($data['feature']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentMethod(): string
diff --git a/src/Model/AdjustReadyToPayoutGeneric.php b/src/Model/AdjustReadyToPayoutGeneric.php
index 4c7818334..3853aa60a 100644
--- a/src/Model/AdjustReadyToPayoutGeneric.php
+++ b/src/Model/AdjustReadyToPayoutGeneric.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AdjustReadyToPayoutGeneric implements AdjustReadyToPayoutPaymentMethod
{
+ use HasMetadata;
+
public const PAYMENT_METHOD_CASH = 'cash';
public const PAYMENT_METHOD_CHECK = 'check';
@@ -88,8 +92,6 @@ class AdjustReadyToPayoutGeneric implements AdjustReadyToPayoutPaymentMethod
public const PAYMENT_METHOD_CUPON_DE_PAGOS = 'Cupon-de-pagos';
- public const PAYMENT_METHOD_CRYPTOCURRENCY = 'cryptocurrency';
-
public const PAYMENT_METHOD_DOMESTIC_CARDS = 'domestic-cards';
public const PAYMENT_METHOD_DIRECTA24_CARD = 'Directa24Card';
@@ -296,6 +298,8 @@ class AdjustReadyToPayoutGeneric implements AdjustReadyToPayoutPaymentMethod
public const PAYMENT_METHOD_VENUS_POINT = 'VenusPoint';
+ public const PAYMENT_METHOD_VIVA = 'Viva';
+
public const PAYMENT_METHOD_VOUCHER = 'voucher';
public const PAYMENT_METHOD_VOUCHER2 = 'voucher-2';
@@ -332,16 +336,17 @@ class AdjustReadyToPayoutGeneric implements AdjustReadyToPayoutPaymentMethod
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentMethod', $data)) {
$this->setPaymentMethod($data['paymentMethod']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentMethod(): string
diff --git a/src/Model/AdjustReadyToPayoutPaymentMethodFactory.php b/src/Model/AdjustReadyToPayoutPaymentMethodFactory.php
index ca892386c..afc792061 100644
--- a/src/Model/AdjustReadyToPayoutPaymentMethodFactory.php
+++ b/src/Model/AdjustReadyToPayoutPaymentMethodFactory.php
@@ -18,154 +18,154 @@
class AdjustReadyToPayoutPaymentMethodFactory
{
- public static function from(array $data = []): AdjustReadyToPayoutPaymentMethod
+ public static function from(array $data = [], array $metadata = []): AdjustReadyToPayoutPaymentMethod
{
return match ($data['paymentMethod']) {
- 'AdvCash' => AdjustReadyToPayoutGeneric::from($data),
- 'Alfa-click' => AdjustReadyToPayoutGeneric::from($data),
- 'Alipay' => AdjustReadyToPayoutGeneric::from($data),
- 'AstroPay Card' => AdjustReadyToPayoutGeneric::from($data),
- 'AstroPay-GO' => AdjustReadyToPayoutGeneric::from($data),
- 'Baloto' => AdjustReadyToPayoutGeneric::from($data),
- 'Bancontact' => AdjustReadyToPayoutGeneric::from($data),
- 'Bancontact-mobile' => AdjustReadyToPayoutGeneric::from($data),
- 'BankReferenced' => AdjustReadyToPayoutGeneric::from($data),
- 'Beeline' => AdjustReadyToPayoutGeneric::from($data),
- 'Belfius-direct-net' => AdjustReadyToPayoutGeneric::from($data),
- 'Bizum' => AdjustReadyToPayoutGeneric::from($data),
- 'Boleto' => AdjustReadyToPayoutGeneric::from($data),
- 'CASHlib' => AdjustReadyToPayoutGeneric::from($data),
- 'CODVoucher' => AdjustReadyToPayoutGeneric::from($data),
- 'CashToCode' => AdjustReadyToPayoutGeneric::from($data),
- 'China UnionPay' => AdjustReadyToPayoutGeneric::from($data),
- 'Cleo' => AdjustReadyToPayoutGeneric::from($data),
- 'Conekta-oxxo' => AdjustReadyToPayoutGeneric::from($data),
- 'Cupon-de-pagos' => AdjustReadyToPayoutGeneric::from($data),
- 'EPS' => AdjustReadyToPayoutGeneric::from($data),
- 'Efecty' => AdjustReadyToPayoutGeneric::from($data),
- 'FasterPay' => AdjustReadyToPayoutGeneric::from($data),
- 'Flexepin' => AdjustReadyToPayoutGeneric::from($data),
- 'Giropay' => AdjustReadyToPayoutGeneric::from($data),
- 'Google Pay' => AdjustReadyToPayoutGeneric::from($data),
- 'Gpaysafe' => AdjustReadyToPayoutGeneric::from($data),
- 'ING-homepay' => AdjustReadyToPayoutGeneric::from($data),
- 'INOVAPAY-pin' => AdjustReadyToPayoutGeneric::from($data),
- 'INOVAPAY-wallet' => AdjustReadyToPayoutGeneric::from($data),
- 'InstaDebit' => AdjustReadyToPayoutGeneric::from($data),
- 'InstantPayments' => AdjustReadyToPayoutGeneric::from($data),
- 'Interac' => AdjustReadyToPayoutGeneric::from($data),
- 'Interac-eTransfer' => AdjustReadyToPayoutGeneric::from($data),
- 'Interac-online' => AdjustReadyToPayoutGeneric::from($data),
- 'Jeton' => AdjustReadyToPayoutGeneric::from($data),
- 'KNOT' => AdjustReadyToPayoutGeneric::from($data),
- 'Khelocard' => AdjustReadyToPayoutGeneric::from($data),
- 'Klarna' => AdjustReadyToPayoutGeneric::from($data),
- 'MTS' => AdjustReadyToPayoutGeneric::from($data),
- 'Matrix' => AdjustReadyToPayoutGeneric::from($data),
- 'MaxiCash' => AdjustReadyToPayoutGeneric::from($data),
- 'Megafon' => AdjustReadyToPayoutGeneric::from($data),
- 'MiFinity-eWallet' => AdjustReadyToPayoutGeneric::from($data),
- 'MuchBetter' => AdjustReadyToPayoutGeneric::from($data),
- 'Multibanco' => AdjustReadyToPayoutGeneric::from($data),
- 'Neosurf' => AdjustReadyToPayoutGeneric::from($data),
- 'Netbanking' => AdjustReadyToPayoutGeneric::from($data),
- 'Neteller' => AdjustReadyToPayoutGeneric::from($data),
- 'Nordea-Solo' => AdjustReadyToPayoutGeneric::from($data),
- 'OXXO' => AdjustReadyToPayoutGeneric::from($data),
- 'OchaPay' => AdjustReadyToPayoutGeneric::from($data),
- 'Onlineueberweisen' => AdjustReadyToPayoutGeneric::from($data),
- 'P24' => AdjustReadyToPayoutGeneric::from($data),
- 'POLi' => AdjustReadyToPayoutGeneric::from($data),
- 'Pagadito' => AdjustReadyToPayoutGeneric::from($data),
- 'PagoEffectivo' => AdjustReadyToPayoutGeneric::from($data),
- 'Pagsmile-deposit-express' => AdjustReadyToPayoutGeneric::from($data),
- 'Pagsmile-lottery' => AdjustReadyToPayoutGeneric::from($data),
- 'Pay4Fun' => AdjustReadyToPayoutGeneric::from($data),
- 'PayCash' => AdjustReadyToPayoutGeneric::from($data),
- 'PayTabs' => AdjustReadyToPayoutGeneric::from($data),
- 'Payeer' => AdjustReadyToPayoutGeneric::from($data),
- 'PaymentAsia-crypto' => AdjustReadyToPayoutGeneric::from($data),
- 'Paymero' => AdjustReadyToPayoutGeneric::from($data),
- 'Paynote' => AdjustReadyToPayoutGeneric::from($data),
- 'Paysafecard' => AdjustReadyToPayoutGeneric::from($data),
- 'Paysafecash' => AdjustReadyToPayoutGeneric::from($data),
- 'Perfect-money' => AdjustReadyToPayoutGeneric::from($data),
- 'PhonePe' => AdjustReadyToPayoutGeneric::from($data),
- 'Piastrix' => AdjustReadyToPayoutGeneric::from($data),
- 'PinPay' => AdjustReadyToPayoutGeneric::from($data),
- 'PostFinance-card' => AdjustReadyToPayoutGeneric::from($data),
- 'PostFinance-e-finance' => AdjustReadyToPayoutGeneric::from($data),
- 'QIWI' => AdjustReadyToPayoutGeneric::from($data),
- 'QPay' => AdjustReadyToPayoutGeneric::from($data),
- 'QQPay' => AdjustReadyToPayoutGeneric::from($data),
- 'Resurs' => AdjustReadyToPayoutGeneric::from($data),
- 'SEPA' => AdjustReadyToPayoutGeneric::from($data),
- 'SMSVoucher' => AdjustReadyToPayoutGeneric::from($data),
- 'SafetyPay' => AdjustReadyToPayoutGeneric::from($data),
- 'Skrill' => AdjustReadyToPayoutGeneric::from($data),
- 'Skrill Rapid Transfer' => AdjustReadyToPayoutGeneric::from($data),
- 'Sofort' => AdjustReadyToPayoutGeneric::from($data),
- 'SparkPay' => AdjustReadyToPayoutGeneric::from($data),
- 'Tele2' => AdjustReadyToPayoutGeneric::from($data),
- 'Terminaly-RF' => AdjustReadyToPayoutGeneric::from($data),
- 'ToditoCash-card' => AdjustReadyToPayoutGeneric::from($data),
- 'Trustly' => AdjustReadyToPayoutGeneric::from($data),
- 'UPI' => AdjustReadyToPayoutGeneric::from($data),
- 'UPayCard' => AdjustReadyToPayoutGeneric::from($data),
- 'USD-coin' => AdjustReadyToPayoutGeneric::from($data),
- 'VCreditos' => AdjustReadyToPayoutGeneric::from($data),
- 'VenusPoint' => AdjustReadyToPayoutGeneric::from($data),
- 'WeChat Pay' => AdjustReadyToPayoutGeneric::from($data),
- 'Webmoney' => AdjustReadyToPayoutGeneric::from($data),
- 'Webpay' => AdjustReadyToPayoutGeneric::from($data),
- 'Webpay Card' => AdjustReadyToPayoutGeneric::from($data),
- 'Webpay-2' => AdjustReadyToPayoutGeneric::from($data),
- 'XPay-P2P' => AdjustReadyToPayoutGeneric::from($data),
- 'XPay-QR' => AdjustReadyToPayoutGeneric::from($data),
- 'Yandex-money' => AdjustReadyToPayoutGeneric::from($data),
- 'Zimpler' => AdjustReadyToPayoutGeneric::from($data),
- 'Zotapay' => AdjustReadyToPayoutGeneric::from($data),
- 'ach' => AdjustReadyToPayoutGeneric::from($data),
- 'bank-transfer' => AdjustReadyToPayoutGeneric::from($data),
- 'bank-transfer-2' => AdjustReadyToPayoutGeneric::from($data),
- 'bank-transfer-3' => AdjustReadyToPayoutGeneric::from($data),
- 'bank-transfer-4' => AdjustReadyToPayoutGeneric::from($data),
- 'bank-transfer-5' => AdjustReadyToPayoutGeneric::from($data),
- 'bank-transfer-6' => AdjustReadyToPayoutGeneric::from($data),
- 'bank-transfer-7' => AdjustReadyToPayoutGeneric::from($data),
- 'bank-transfer-8' => AdjustReadyToPayoutGeneric::from($data),
- 'bank-transfer-9' => AdjustReadyToPayoutGeneric::from($data),
- 'bitcoin' => AdjustReadyToPayoutGeneric::from($data),
- 'cash' => AdjustReadyToPayoutGeneric::from($data),
- 'cash-deposit' => AdjustReadyToPayoutGeneric::from($data),
- 'check' => AdjustReadyToPayoutGeneric::from($data),
- 'cryptocurrency' => AdjustReadyToPayoutGeneric::from($data),
- 'domestic-cards' => AdjustReadyToPayoutGeneric::from($data),
- 'ePay.bg' => AdjustReadyToPayoutGeneric::from($data),
- 'eZeeWallet' => AdjustReadyToPayoutGeneric::from($data),
- 'echeck' => AdjustReadyToPayoutGeneric::from($data),
- 'ecoPayz' => AdjustReadyToPayoutGeneric::from($data),
- 'ecoVoucher' => AdjustReadyToPayoutGeneric::from($data),
- 'iDEAL' => AdjustReadyToPayoutGeneric::from($data),
- 'iDebit' => AdjustReadyToPayoutGeneric::from($data),
- 'iWallet' => AdjustReadyToPayoutGeneric::from($data),
- 'instant-bank-transfer' => AdjustReadyToPayoutGeneric::from($data),
- 'invoice' => AdjustReadyToPayoutGeneric::from($data),
- 'jpay' => AdjustReadyToPayoutGeneric::from($data),
- 'loonie' => AdjustReadyToPayoutGeneric::from($data),
- 'miscellaneous' => AdjustReadyToPayoutGeneric::from($data),
- 'online-bank-transfer' => AdjustReadyToPayoutGeneric::from($data),
- 'oriental-wallet' => AdjustReadyToPayoutGeneric::from($data),
- 'payment-card' => AdjustReadyToPayoutGeneric::from($data),
- 'paypal' => AdjustReadyToPayoutGeneric::from($data),
- 'phone' => AdjustReadyToPayoutGeneric::from($data),
- 'plaid-account' => AdjustReadyToPayoutGeneric::from($data),
- 'rapyd-checkout' => AdjustReadyToPayoutGeneric::from($data),
- 'swift-dbt' => AdjustReadyToPayoutGeneric::from($data),
- 'voucher' => AdjustReadyToPayoutGeneric::from($data),
- 'voucher-2' => AdjustReadyToPayoutGeneric::from($data),
- 'voucher-3' => AdjustReadyToPayoutGeneric::from($data),
- 'voucher-4' => AdjustReadyToPayoutGeneric::from($data),
+ 'AdvCash' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Alfa-click' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Alipay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'AstroPay Card' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'AstroPay-GO' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Baloto' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Bancontact' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Bancontact-mobile' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'BankReferenced' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Beeline' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Belfius-direct-net' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Bizum' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Boleto' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'CASHlib' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'CODVoucher' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'CashToCode' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'China UnionPay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Cleo' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Conekta-oxxo' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Cupon-de-pagos' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'EPS' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Efecty' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'FasterPay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Flexepin' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Giropay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Google Pay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Gpaysafe' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'ING-homepay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'INOVAPAY-pin' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'INOVAPAY-wallet' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'InstaDebit' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'InstantPayments' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Interac' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Interac-eTransfer' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Interac-online' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Jeton' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'KNOT' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Khelocard' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Klarna' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'MTS' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Matrix' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'MaxiCash' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Megafon' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'MiFinity-eWallet' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'MuchBetter' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Multibanco' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Neosurf' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Netbanking' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Neteller' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Nordea-Solo' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'OXXO' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'OchaPay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Onlineueberweisen' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'P24' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'POLi' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Pagadito' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'PagoEffectivo' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Pagsmile-deposit-express' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Pagsmile-lottery' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Pay4Fun' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'PayCash' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'PayTabs' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Payeer' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'PaymentAsia-crypto' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Paymero' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Paynote' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Paysafecard' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Paysafecash' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Perfect-money' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'PhonePe' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Piastrix' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'PinPay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'PostFinance-card' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'PostFinance-e-finance' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'QIWI' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'QPay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'QQPay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Resurs' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'SEPA' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'SMSVoucher' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'SafetyPay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Skrill' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Skrill Rapid Transfer' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Sofort' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'SparkPay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Tele2' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Terminaly-RF' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'ToditoCash-card' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Trustly' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'UPI' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'UPayCard' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'USD-coin' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'VCreditos' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'VenusPoint' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'WeChat Pay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Webmoney' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Webpay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Webpay Card' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Webpay-2' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'XPay-P2P' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'XPay-QR' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Yandex-money' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Zimpler' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'Zotapay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'ach' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bank-transfer' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bank-transfer-2' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bank-transfer-3' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bank-transfer-4' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bank-transfer-5' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bank-transfer-6' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bank-transfer-7' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bank-transfer-8' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bank-transfer-9' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'bitcoin' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'cash' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'cash-deposit' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'check' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'cryptocurrency' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'domestic-cards' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'ePay.bg' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'eZeeWallet' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'echeck' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'ecoPayz' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'ecoVoucher' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'iDEAL' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'iDebit' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'iWallet' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'instant-bank-transfer' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'invoice' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'jpay' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'loonie' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'miscellaneous' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'online-bank-transfer' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'oriental-wallet' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'payment-card' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'paypal' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'phone' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'plaid-account' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'rapyd-checkout' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'swift-dbt' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'voucher' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'voucher-2' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'voucher-3' => AdjustReadyToPayoutGeneric::from($data, $metadata),
+ 'voucher-4' => AdjustReadyToPayoutGeneric::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/Adyen.php b/src/Model/Adyen.php
index 284723550..f995fb6c9 100644
--- a/src/Model/Adyen.php
+++ b/src/Model/Adyen.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Adyen extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Adyen',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AdyenCredentials
diff --git a/src/Model/AdyenCredentials.php b/src/Model/AdyenCredentials.php
index 73637cf2d..874a3c4db 100644
--- a/src/Model/AdyenCredentials.php
+++ b/src/Model/AdyenCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AdyenCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantAccount', $data)) {
$this->setMerchantAccount($data['merchantAccount']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('hmacKey', $data)) {
$this->setHmacKey($data['hmacKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantAccount(): string
diff --git a/src/Model/AdyenSettings.php b/src/Model/AdyenSettings.php
index 2589e34d4..b9c2fede8 100644
--- a/src/Model/AdyenSettings.php
+++ b/src/Model/AdyenSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AdyenSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('store', $data)) {
$this->setStore($data['store']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('riskProfile', $data)) {
$this->setRiskProfile($data['riskProfile']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStore(): ?string
diff --git a/src/Model/AdyenSettingsSplitPayments.php b/src/Model/AdyenSettingsSplitPayments.php
index 2841503d7..6e95943d9 100644
--- a/src/Model/AdyenSettingsSplitPayments.php
+++ b/src/Model/AdyenSettingsSplitPayments.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AdyenSettingsSplitPayments implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_BALANCE_ACCOUNT = 'BalanceAccount';
public const TYPE_COMMISSION = 'Commission';
@@ -28,7 +31,7 @@ class AdyenSettingsSplitPayments implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('percentage', $data)) {
$this->setPercentage($data['percentage']);
@@ -48,11 +51,12 @@ public function __construct(array $data = [])
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPercentage(): ?float
diff --git a/src/Model/Aera.php b/src/Model/Aera.php
index eb5077edc..ee8fad808 100644
--- a/src/Model/Aera.php
+++ b/src/Model/Aera.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Aera extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Aera',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AeraCredentials
diff --git a/src/Model/AeraCredentials.php b/src/Model/AeraCredentials.php
index 9dec994c0..82a295054 100644
--- a/src/Model/AeraCredentials.php
+++ b/src/Model/AeraCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AeraCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('ipnSecret', $data)) {
$this->setIpnSecret($data['ipnSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/Aircash.php b/src/Model/Aircash.php
index ac97b0c2e..c2b31d80c 100644
--- a/src/Model/Aircash.php
+++ b/src/Model/Aircash.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Aircash extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Aircash',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AircashCredentials
diff --git a/src/Model/AircashCredentials.php b/src/Model/AircashCredentials.php
index 6cc822955..7449cb448 100644
--- a/src/Model/AircashCredentials.php
+++ b/src/Model/AircashCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AircashCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('partnerId', $data)) {
$this->setPartnerId($data['partnerId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('privateKeyPassword', $data)) {
$this->setPrivateKeyPassword($data['privateKeyPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPartnerId(): string
diff --git a/src/Model/Airpay.php b/src/Model/Airpay.php
index 6bdea5961..a0c551a0b 100644
--- a/src/Model/Airpay.php
+++ b/src/Model/Airpay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Airpay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Airpay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AirpayCredentials
diff --git a/src/Model/AirpayCredentials.php b/src/Model/AirpayCredentials.php
index bd431dc29..80239e194 100644
--- a/src/Model/AirpayCredentials.php
+++ b/src/Model/AirpayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AirpayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/Airwallex.php b/src/Model/Airwallex.php
index d2bb5e105..5a9f4ba45 100644
--- a/src/Model/Airwallex.php
+++ b/src/Model/Airwallex.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Airwallex extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Airwallex',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AirwallexCredentials
diff --git a/src/Model/AirwallexCredentials.php b/src/Model/AirwallexCredentials.php
index c3f8b2be5..60ebdbe1c 100644
--- a/src/Model/AirwallexCredentials.php
+++ b/src/Model/AirwallexCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AirwallexCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/AirwallexSettings.php b/src/Model/AirwallexSettings.php
index 22caa7382..97ca05a27 100644
--- a/src/Model/AirwallexSettings.php
+++ b/src/Model/AirwallexSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AirwallexSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('deviceIdCustomField', $data)) {
$this->setDeviceIdCustomField($data['deviceIdCustomField']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDeviceIdCustomField(): ?string
diff --git a/src/Model/Allowlist.php b/src/Model/Allowlist.php
index 97be5cb2c..c009a8b6d 100644
--- a/src/Model/Allowlist.php
+++ b/src/Model/Allowlist.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Allowlist implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_ADDRESS = 'address';
public const TYPE_BANK_ACCOUNT = 'bank-account';
@@ -42,7 +45,7 @@ class Allowlist implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -62,11 +65,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/AlternativeInstrument.php b/src/Model/AlternativeInstrument.php
index ec8f42ed1..7850f5f7b 100644
--- a/src/Model/AlternativeInstrument.php
+++ b/src/Model/AlternativeInstrument.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class AlternativeInstrument implements PaymentInstrument, PostPaymentInstrumentRequest
{
+ use HasMetadata;
+
public const METHOD_CASH = 'cash';
public const METHOD_CHECK = 'check';
@@ -303,6 +306,8 @@ class AlternativeInstrument implements PaymentInstrument, PostPaymentInstrumentR
public const METHOD_VENUS_POINT = 'VenusPoint';
+ public const METHOD_VIVA = 'Viva';
+
public const METHOD_VOUCHER = 'voucher';
public const METHOD_VOUCHER2 = 'voucher-2';
@@ -343,7 +348,7 @@ class AlternativeInstrument implements PaymentInstrument, PostPaymentInstrumentR
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -393,11 +398,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/AlternativeInstrumentEmbedded.php b/src/Model/AlternativeInstrumentEmbedded.php
index ad428257b..8bdfcbf18 100644
--- a/src/Model/AlternativeInstrumentEmbedded.php
+++ b/src/Model/AlternativeInstrumentEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AlternativeInstrumentEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/AlternativePaymentInstrument.php b/src/Model/AlternativePaymentInstrument.php
index 220b7733f..6d9e0b796 100644
--- a/src/Model/AlternativePaymentInstrument.php
+++ b/src/Model/AlternativePaymentInstrument.php
@@ -14,17 +14,11 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AlternativePaymentInstrument implements CustomerDefaultPaymentInstrument, TransactionPaymentInstrument
{
- public const METHOD_PAYMENT_CARD = 'payment-card';
-
- public const METHOD_ACH = 'ach';
-
- public const METHOD_CASH = 'cash';
-
- public const METHOD_CHECK = 'check';
-
- public const METHOD_PAYPAL = 'paypal';
+ use HasMetadata;
public const METHOD_ADV_CASH = 'AdvCash';
@@ -374,6 +368,8 @@ class AlternativePaymentInstrument implements CustomerDefaultPaymentInstrument,
public const METHOD_VENUS_POINT = 'VenusPoint';
+ public const METHOD_VIVA = 'Viva';
+
public const METHOD_VOUCHER = 'voucher';
public const METHOD_VOUCHER2 = 'voucher-2';
@@ -408,7 +404,7 @@ class AlternativePaymentInstrument implements CustomerDefaultPaymentInstrument,
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
@@ -419,11 +415,12 @@ public function __construct(array $data = [])
if (array_key_exists('reference', $data)) {
$this->setReference($data['reference']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/AlternativePaymentToken.php b/src/Model/AlternativePaymentToken.php
index 881851aec..8140ec0de 100644
--- a/src/Model/AlternativePaymentToken.php
+++ b/src/Model/AlternativePaymentToken.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class AlternativePaymentToken implements CompositeToken
{
+ use HasMetadata;
+
public const METHOD_CASH = 'cash';
public const METHOD_CHECK = 'check';
@@ -91,8 +94,6 @@ class AlternativePaymentToken implements CompositeToken
public const METHOD_CUPON_DE_PAGOS = 'Cupon-de-pagos';
- public const METHOD_CRYPTOCURRENCY = 'cryptocurrency';
-
public const METHOD_DOMESTIC_CARDS = 'domestic-cards';
public const METHOD_DIRECTA24_CARD = 'Directa24Card';
@@ -299,6 +300,8 @@ class AlternativePaymentToken implements CompositeToken
public const METHOD_VENUS_POINT = 'VenusPoint';
+ public const METHOD_VIVA = 'Viva';
+
public const METHOD_VOUCHER = 'voucher';
public const METHOD_VOUCHER2 = 'voucher-2';
@@ -335,7 +338,7 @@ class AlternativePaymentToken implements CompositeToken
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
@@ -370,11 +373,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/AmazonPay.php b/src/Model/AmazonPay.php
index 1784330e0..4561ddcb8 100644
--- a/src/Model/AmazonPay.php
+++ b/src/Model/AmazonPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AmazonPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'AmazonPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AmazonPayCredentials
diff --git a/src/Model/AmazonPayCredentials.php b/src/Model/AmazonPayCredentials.php
index 2285da7bb..21e934948 100644
--- a/src/Model/AmazonPayCredentials.php
+++ b/src/Model/AmazonPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmazonPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('privateKey', $data)) {
$this->setPrivateKey($data['privateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/AmexVPC.php b/src/Model/AmexVPC.php
index 4363a21b6..9a0f39961 100644
--- a/src/Model/AmexVPC.php
+++ b/src/Model/AmexVPC.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AmexVPC extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'AmexVPC',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AmexVPCCredentials
diff --git a/src/Model/AmexVPCCredentials.php b/src/Model/AmexVPCCredentials.php
index f99372a68..3fd772acd 100644
--- a/src/Model/AmexVPCCredentials.php
+++ b/src/Model/AmexVPCCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmexVPCCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/AmexVPCSettings.php b/src/Model/AmexVPCSettings.php
index 07a49a666..3a965724e 100644
--- a/src/Model/AmexVPCSettings.php
+++ b/src/Model/AmexVPCSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmexVPCSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('url', $data)) {
$this->setUrl($data['url']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUrl(): string
diff --git a/src/Model/AmlCheck.php b/src/Model/AmlCheck.php
index 972c2b235..a519a44c8 100644
--- a/src/Model/AmlCheck.php
+++ b/src/Model/AmlCheck.php
@@ -17,9 +17,16 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlCheck implements JsonSerializable
{
+ use HasMetadata;
+
+ public const REVIEWER_TYPE_HUMAN = 'human';
+
+ public const REVIEWER_TYPE_BOT = 'bot';
+
public const SOURCE_SIGN_UP = 'sign-up';
public const SOURCE_RECURRING = 'recurring';
@@ -36,9 +43,17 @@ class AmlCheck implements JsonSerializable
public const STATUS_FALSE_POSITIVE = 'false-positive';
+ public const NO_MATCH_REASON_NO_HITS_FOUND = 'no_hits_found';
+
+ public const NO_MATCH_REASON_MISMATCHED_HITS = 'mismatched_hits';
+
+ public const NO_MATCH_REASON_HITS_ARE_BELOW_RELEVANCE_SCORE_THRESHOLD = 'hits_are_below_relevance_score_threshold';
+
+ public const NO_MATCH_REASON_INTERNAL_SYSTEM_ERROR = 'internal_system_error';
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -55,6 +70,9 @@ public function __construct(array $data = [])
if (array_key_exists('reviewerId', $data)) {
$this->setReviewerId($data['reviewerId']);
}
+ if (array_key_exists('reviewerType', $data)) {
+ $this->setReviewerType($data['reviewerType']);
+ }
if (array_key_exists('reviewerName', $data)) {
$this->setReviewerName($data['reviewerName']);
}
@@ -82,14 +100,21 @@ public function __construct(array $data = [])
if (array_key_exists('tags', $data)) {
$this->setTags($data['tags']);
}
+ if (array_key_exists('provenance', $data)) {
+ $this->setProvenance($data['provenance']);
+ }
+ if (array_key_exists('noMatchReason', $data)) {
+ $this->setNoMatchReason($data['noMatchReason']);
+ }
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
@@ -138,6 +163,11 @@ public function setReviewerId(null|string $reviewerId): static
return $this;
}
+ public function getReviewerType(): ?string
+ {
+ return $this->fields['reviewerType'] ?? null;
+ }
+
public function getReviewerName(): ?string
{
return $this->fields['reviewerName'] ?? null;
@@ -258,6 +288,27 @@ public function getTags(): ?array
return $this->fields['tags'] ?? null;
}
+ public function getProvenance(): ?AmlCheckProvenance
+ {
+ return $this->fields['provenance'] ?? null;
+ }
+
+ public function setProvenance(null|AmlCheckProvenance|array $provenance): static
+ {
+ if ($provenance !== null && !($provenance instanceof AmlCheckProvenance)) {
+ $provenance = AmlCheckProvenance::from($provenance);
+ }
+
+ $this->fields['provenance'] = $provenance;
+
+ return $this;
+ }
+
+ public function getNoMatchReason(): ?string
+ {
+ return $this->fields['noMatchReason'] ?? null;
+ }
+
/**
* @return null|ResourceLink[]
*/
@@ -284,6 +335,9 @@ public function jsonSerialize(): array
if (array_key_exists('reviewerId', $this->fields)) {
$data['reviewerId'] = $this->fields['reviewerId'];
}
+ if (array_key_exists('reviewerType', $this->fields)) {
+ $data['reviewerType'] = $this->fields['reviewerType'];
+ }
if (array_key_exists('reviewerName', $this->fields)) {
$data['reviewerName'] = $this->fields['reviewerName'];
}
@@ -321,6 +375,12 @@ public function jsonSerialize(): array
)
: null;
}
+ if (array_key_exists('provenance', $this->fields)) {
+ $data['provenance'] = $this->fields['provenance']?->jsonSerialize();
+ }
+ if (array_key_exists('noMatchReason', $this->fields)) {
+ $data['noMatchReason'] = $this->fields['noMatchReason'];
+ }
if (array_key_exists('_links', $this->fields)) {
$data['_links'] = $this->fields['_links'] !== null
? array_map(
@@ -355,6 +415,13 @@ private function setUpdatedTime(null|DateTimeImmutable|string $updatedTime): sta
return $this;
}
+ private function setReviewerType(null|string $reviewerType): static
+ {
+ $this->fields['reviewerType'] = $reviewerType;
+
+ return $this;
+ }
+
private function setStatus(null|string $status): static
{
$this->fields['status'] = $status;
@@ -377,6 +444,13 @@ private function setTags(null|array $tags): static
return $this;
}
+ private function setNoMatchReason(null|string $noMatchReason): static
+ {
+ $this->fields['noMatchReason'] = $noMatchReason;
+
+ return $this;
+ }
+
/**
* @param null|array[]|ResourceLink[] $links
*/
diff --git a/src/Model/AmlCheckCustomer.php b/src/Model/AmlCheckCustomer.php
index 33678c190..ebf7a1a4d 100644
--- a/src/Model/AmlCheckCustomer.php
+++ b/src/Model/AmlCheckCustomer.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlCheckCustomer implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('organizationId', $data)) {
$this->setOrganizationId($data['organizationId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/AmlCheckCustomerPrimaryAddress.php b/src/Model/AmlCheckCustomerPrimaryAddress.php
index 0d3a52368..4089ccdac 100644
--- a/src/Model/AmlCheckCustomerPrimaryAddress.php
+++ b/src/Model/AmlCheckCustomerPrimaryAddress.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlCheckCustomerPrimaryAddress implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('firstName', $data)) {
$this->setFirstName($data['firstName']);
@@ -50,11 +53,12 @@ public function __construct(array $data = [])
if (array_key_exists('postalCode', $data)) {
$this->setPostalCode($data['postalCode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFirstName(): ?string
diff --git a/src/Model/AmlCheckProvenance.php b/src/Model/AmlCheckProvenance.php
new file mode 100644
index 000000000..53e127a7a
--- /dev/null
+++ b/src/Model/AmlCheckProvenance.php
@@ -0,0 +1,134 @@
+setInherited($data['inherited']);
+ }
+ if (array_key_exists('inheritedFromAmlCheckId', $data)) {
+ $this->setInheritedFromAmlCheckId($data['inheritedFromAmlCheckId']);
+ }
+ if (array_key_exists('scope', $data)) {
+ $this->setScope($data['scope']);
+ }
+ if (array_key_exists('reasons', $data)) {
+ $this->setReasons($data['reasons']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getInherited(): ?bool
+ {
+ return $this->fields['inherited'] ?? null;
+ }
+
+ public function setInherited(null|bool $inherited): static
+ {
+ $this->fields['inherited'] = $inherited;
+
+ return $this;
+ }
+
+ public function getInheritedFromAmlCheckId(): ?string
+ {
+ return $this->fields['inheritedFromAmlCheckId'] ?? null;
+ }
+
+ public function setInheritedFromAmlCheckId(null|string $inheritedFromAmlCheckId): static
+ {
+ $this->fields['inheritedFromAmlCheckId'] = $inheritedFromAmlCheckId;
+
+ return $this;
+ }
+
+ /**
+ * @return null|string[]
+ */
+ public function getScope(): ?array
+ {
+ return $this->fields['scope'] ?? null;
+ }
+
+ /**
+ * @param null|string[] $scope
+ */
+ public function setScope(null|array $scope): static
+ {
+ $this->fields['scope'] = $scope;
+
+ return $this;
+ }
+
+ /**
+ * @return null|string[]
+ */
+ public function getReasons(): ?array
+ {
+ return $this->fields['reasons'] ?? null;
+ }
+
+ /**
+ * @param null|string[] $reasons
+ */
+ public function setReasons(null|array $reasons): static
+ {
+ $this->fields['reasons'] = $reasons;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('inherited', $this->fields)) {
+ $data['inherited'] = $this->fields['inherited'];
+ }
+ if (array_key_exists('inheritedFromAmlCheckId', $this->fields)) {
+ $data['inheritedFromAmlCheckId'] = $this->fields['inheritedFromAmlCheckId'];
+ }
+ if (array_key_exists('scope', $this->fields)) {
+ $data['scope'] = $this->fields['scope'];
+ }
+ if (array_key_exists('reasons', $this->fields)) {
+ $data['reasons'] = $this->fields['reasons'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/AmlCheckReview.php b/src/Model/AmlCheckReview.php
index 72b56ec82..1843f1af6 100644
--- a/src/Model/AmlCheckReview.php
+++ b/src/Model/AmlCheckReview.php
@@ -15,25 +15,29 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlCheckReview implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_CONFIRMED_MATCH = 'confirmed-match';
public const STATUS_FALSE_POSITIVE = 'false-positive';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): ?string
diff --git a/src/Model/AmlChecksDataExport.php b/src/Model/AmlChecksDataExport.php
index f17166b20..6e144abca 100644
--- a/src/Model/AmlChecksDataExport.php
+++ b/src/Model/AmlChecksDataExport.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlChecksDataExport implements DataExport
{
+ use HasMetadata;
+
public const FORMAT_CSV = 'csv';
public const FORMAT_JSON = 'json';
@@ -37,7 +40,7 @@ class AmlChecksDataExport implements DataExport
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -90,11 +93,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResource(): string
@@ -234,15 +238,15 @@ public function getStatus(): ?string
return $this->fields['status'] ?? null;
}
- public function getDateRange(): ?DataExportDateRange
+ public function getDateRange(): ?AmlChecksDataExportDateRange
{
return $this->fields['dateRange'] ?? null;
}
- public function setDateRange(null|DataExportDateRange|array $dateRange): static
+ public function setDateRange(null|AmlChecksDataExportDateRange|array $dateRange): static
{
- if ($dateRange !== null && !($dateRange instanceof DataExportDateRange)) {
- $dateRange = DataExportDateRange::from($dateRange);
+ if ($dateRange !== null && !($dateRange instanceof AmlChecksDataExportDateRange)) {
+ $dateRange = AmlChecksDataExportDateRange::from($dateRange);
}
$this->fields['dateRange'] = $dateRange;
diff --git a/src/Model/AmlChecksDataExportDateRange.php b/src/Model/AmlChecksDataExportDateRange.php
new file mode 100644
index 000000000..ed87316c3
--- /dev/null
+++ b/src/Model/AmlChecksDataExportDateRange.php
@@ -0,0 +1,96 @@
+setStart($data['start']);
+ }
+ if (array_key_exists('end', $data)) {
+ $this->setEnd($data['end']);
+ }
+ if (array_key_exists('field', $data)) {
+ $this->setField($data['field']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getStart(): string
+ {
+ return $this->fields['start'];
+ }
+
+ public function setStart(string $start): static
+ {
+ $this->fields['start'] = $start;
+
+ return $this;
+ }
+
+ public function getEnd(): string
+ {
+ return $this->fields['end'];
+ }
+
+ public function setEnd(string $end): static
+ {
+ $this->fields['end'] = $end;
+
+ return $this;
+ }
+
+ public function getField(): ?string
+ {
+ return $this->fields['field'] ?? null;
+ }
+
+ public function setField(null|string $field): static
+ {
+ $this->fields['field'] = $field;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('start', $this->fields)) {
+ $data['start'] = $this->fields['start'];
+ }
+ if (array_key_exists('end', $this->fields)) {
+ $data['end'] = $this->fields['end'];
+ }
+ if (array_key_exists('field', $this->fields)) {
+ $data['field'] = $this->fields['field'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/AmlChecksDataExportEmbedded.php b/src/Model/AmlChecksDataExportEmbedded.php
index 7e8b04054..a363fe746 100644
--- a/src/Model/AmlChecksDataExportEmbedded.php
+++ b/src/Model/AmlChecksDataExportEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlChecksDataExportEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('user', $data)) {
$this->setUser($data['user']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): ?File
diff --git a/src/Model/AmlCompoundConfidence.php b/src/Model/AmlCompoundConfidence.php
index a4c730e17..04114a7ab 100644
--- a/src/Model/AmlCompoundConfidence.php
+++ b/src/Model/AmlCompoundConfidence.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlCompoundConfidence implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('addressMatch', $data)) {
$this->setAddressMatch($data['addressMatch']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('noAddress', $data)) {
$this->setNoAddress($data['noAddress']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAddressMatch(): ?AmlCompoundConfidenceAddressMatch
diff --git a/src/Model/AmlCompoundConfidenceAddressMatch.php b/src/Model/AmlCompoundConfidenceAddressMatch.php
index e4553da19..d0a873bb0 100644
--- a/src/Model/AmlCompoundConfidenceAddressMatch.php
+++ b/src/Model/AmlCompoundConfidenceAddressMatch.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlCompoundConfidenceAddressMatch implements JsonSerializable
{
+ use HasMetadata;
+
public const MATCHING_COUNTRY_WEAK = 'weak';
public const MATCHING_COUNTRY_MEDIUM = 'medium';
@@ -44,7 +47,7 @@ class AmlCompoundConfidenceAddressMatch implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('matchingCountry', $data)) {
$this->setMatchingCountry($data['matchingCountry']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('noCountry', $data)) {
$this->setNoCountry($data['noCountry']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMatchingCountry(): ?string
diff --git a/src/Model/AmlCompoundConfidenceAddressMismatch.php b/src/Model/AmlCompoundConfidenceAddressMismatch.php
index 97ef5da80..0fd51f71b 100644
--- a/src/Model/AmlCompoundConfidenceAddressMismatch.php
+++ b/src/Model/AmlCompoundConfidenceAddressMismatch.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlCompoundConfidenceAddressMismatch implements JsonSerializable
{
+ use HasMetadata;
+
public const MATCHING_COUNTRY_WEAK = 'weak';
public const MATCHING_COUNTRY_MEDIUM = 'medium';
@@ -44,7 +47,7 @@ class AmlCompoundConfidenceAddressMismatch implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('matchingCountry', $data)) {
$this->setMatchingCountry($data['matchingCountry']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('noCountry', $data)) {
$this->setNoCountry($data['noCountry']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMatchingCountry(): ?string
diff --git a/src/Model/AmlCompoundConfidenceNoAddress.php b/src/Model/AmlCompoundConfidenceNoAddress.php
index 58c7ce64a..4497ebc28 100644
--- a/src/Model/AmlCompoundConfidenceNoAddress.php
+++ b/src/Model/AmlCompoundConfidenceNoAddress.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlCompoundConfidenceNoAddress implements JsonSerializable
{
+ use HasMetadata;
+
public const MATCHING_COUNTRY_WEAK = 'weak';
public const MATCHING_COUNTRY_MEDIUM = 'medium';
@@ -44,7 +47,7 @@ class AmlCompoundConfidenceNoAddress implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('matchingCountry', $data)) {
$this->setMatchingCountry($data['matchingCountry']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('noCountry', $data)) {
$this->setNoCountry($data['noCountry']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMatchingCountry(): ?string
diff --git a/src/Model/AmlSettings.php b/src/Model/AmlSettings.php
index aed5928b5..2f9102da2 100644
--- a/src/Model/AmlSettings.php
+++ b/src/Model/AmlSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('confidence', $data)) {
$this->setConfidence($data['confidence']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('priority', $data)) {
$this->setPriority($data['priority']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getConfidence(): ?AmlSettingsConfidence
diff --git a/src/Model/AmlSettingsConfidence.php b/src/Model/AmlSettingsConfidence.php
index 93f7a673a..927839d15 100644
--- a/src/Model/AmlSettingsConfidence.php
+++ b/src/Model/AmlSettingsConfidence.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsConfidence implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('dob', $data)) {
$this->setDob($data['dob']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('inexactYob', $data)) {
$this->setInexactYob($data['inexactYob']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDob(): ?AmlSettingsConfidenceDob
diff --git a/src/Model/AmlSettingsConfidenceDob.php b/src/Model/AmlSettingsConfidenceDob.php
index 84a3f68a2..5c58bbd15 100644
--- a/src/Model/AmlSettingsConfidenceDob.php
+++ b/src/Model/AmlSettingsConfidenceDob.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsConfidenceDob implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('exactMatch', $data)) {
$this->setExactMatch($data['exactMatch']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('inexactMatch', $data)) {
$this->setInexactMatch($data['inexactMatch']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getExactMatch(): ?AmlCompoundConfidence
diff --git a/src/Model/AmlSettingsConfidenceInexactYob.php b/src/Model/AmlSettingsConfidenceInexactYob.php
index 27e3c21d5..8cf8b697e 100644
--- a/src/Model/AmlSettingsConfidenceInexactYob.php
+++ b/src/Model/AmlSettingsConfidenceInexactYob.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsConfidenceInexactYob implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('exactMatch', $data)) {
$this->setExactMatch($data['exactMatch']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('inexactMatch', $data)) {
$this->setInexactMatch($data['inexactMatch']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getExactMatch(): ?AmlCompoundConfidence
diff --git a/src/Model/AmlSettingsConfidenceNoDob.php b/src/Model/AmlSettingsConfidenceNoDob.php
index 74bebfe7a..1f21e0d7b 100644
--- a/src/Model/AmlSettingsConfidenceNoDob.php
+++ b/src/Model/AmlSettingsConfidenceNoDob.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsConfidenceNoDob implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('exactMatch', $data)) {
$this->setExactMatch($data['exactMatch']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('weakMatch', $data)) {
$this->setWeakMatch($data['weakMatch']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getExactMatch(): ?AmlCompoundConfidence
diff --git a/src/Model/AmlSettingsConfidenceYob.php b/src/Model/AmlSettingsConfidenceYob.php
index 1a586cf36..7d01f5722 100644
--- a/src/Model/AmlSettingsConfidenceYob.php
+++ b/src/Model/AmlSettingsConfidenceYob.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsConfidenceYob implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('exactMatch', $data)) {
$this->setExactMatch($data['exactMatch']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('inexactMatch', $data)) {
$this->setInexactMatch($data['inexactMatch']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getExactMatch(): ?AmlCompoundConfidence
diff --git a/src/Model/AmlSettingsPriority.php b/src/Model/AmlSettingsPriority.php
index 9f08081e8..5e1838281 100644
--- a/src/Model/AmlSettingsPriority.php
+++ b/src/Model/AmlSettingsPriority.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsPriority implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('pep', $data)) {
$this->setPep($data['pep']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('adverseMedia', $data)) {
$this->setAdverseMedia($data['adverseMedia']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPep(): ?AmlSettingsPriorityPep
diff --git a/src/Model/AmlSettingsPriorityAdverseMedia.php b/src/Model/AmlSettingsPriorityAdverseMedia.php
index b1179f468..fb0869101 100644
--- a/src/Model/AmlSettingsPriorityAdverseMedia.php
+++ b/src/Model/AmlSettingsPriorityAdverseMedia.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsPriorityAdverseMedia implements JsonSerializable
{
+ use HasMetadata;
+
public const VERY_STRONG_P0 = 'p0';
public const VERY_STRONG_P1 = 'p1';
@@ -52,7 +55,7 @@ class AmlSettingsPriorityAdverseMedia implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('veryStrong', $data)) {
$this->setVeryStrong($data['veryStrong']);
@@ -66,11 +69,12 @@ public function __construct(array $data = [])
if (array_key_exists('weak', $data)) {
$this->setWeak($data['weak']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getVeryStrong(): ?string
diff --git a/src/Model/AmlSettingsPriorityEnforcements.php b/src/Model/AmlSettingsPriorityEnforcements.php
index 49fc673e7..9638642a0 100644
--- a/src/Model/AmlSettingsPriorityEnforcements.php
+++ b/src/Model/AmlSettingsPriorityEnforcements.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsPriorityEnforcements implements JsonSerializable
{
+ use HasMetadata;
+
public const VERY_STRONG_P0 = 'p0';
public const VERY_STRONG_P1 = 'p1';
@@ -52,7 +55,7 @@ class AmlSettingsPriorityEnforcements implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('veryStrong', $data)) {
$this->setVeryStrong($data['veryStrong']);
@@ -66,11 +69,12 @@ public function __construct(array $data = [])
if (array_key_exists('weak', $data)) {
$this->setWeak($data['weak']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getVeryStrong(): ?string
diff --git a/src/Model/AmlSettingsPriorityPep.php b/src/Model/AmlSettingsPriorityPep.php
index 82bd3bae3..2b12f9c5c 100644
--- a/src/Model/AmlSettingsPriorityPep.php
+++ b/src/Model/AmlSettingsPriorityPep.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsPriorityPep implements JsonSerializable
{
+ use HasMetadata;
+
public const VERY_STRONG_P0 = 'p0';
public const VERY_STRONG_P1 = 'p1';
@@ -52,7 +55,7 @@ class AmlSettingsPriorityPep implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('veryStrong', $data)) {
$this->setVeryStrong($data['veryStrong']);
@@ -66,11 +69,12 @@ public function __construct(array $data = [])
if (array_key_exists('weak', $data)) {
$this->setWeak($data['weak']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getVeryStrong(): ?string
diff --git a/src/Model/AmlSettingsPrioritySanctions.php b/src/Model/AmlSettingsPrioritySanctions.php
index fd5eb78a6..e491290b9 100644
--- a/src/Model/AmlSettingsPrioritySanctions.php
+++ b/src/Model/AmlSettingsPrioritySanctions.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsPrioritySanctions implements JsonSerializable
{
+ use HasMetadata;
+
public const VERY_STRONG_P0 = 'p0';
public const VERY_STRONG_P1 = 'p1';
@@ -52,7 +55,7 @@ class AmlSettingsPrioritySanctions implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('veryStrong', $data)) {
$this->setVeryStrong($data['veryStrong']);
@@ -66,11 +69,12 @@ public function __construct(array $data = [])
if (array_key_exists('weak', $data)) {
$this->setWeak($data['weak']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getVeryStrong(): ?string
diff --git a/src/Model/AmlSettingsPriorityStateOwnedEnterprise.php b/src/Model/AmlSettingsPriorityStateOwnedEnterprise.php
index 3f8cdb899..e2102c4bc 100644
--- a/src/Model/AmlSettingsPriorityStateOwnedEnterprise.php
+++ b/src/Model/AmlSettingsPriorityStateOwnedEnterprise.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AmlSettingsPriorityStateOwnedEnterprise implements JsonSerializable
{
+ use HasMetadata;
+
public const VERY_STRONG_P0 = 'p0';
public const VERY_STRONG_P1 = 'p1';
@@ -52,7 +55,7 @@ class AmlSettingsPriorityStateOwnedEnterprise implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('veryStrong', $data)) {
$this->setVeryStrong($data['veryStrong']);
@@ -66,11 +69,12 @@ public function __construct(array $data = [])
if (array_key_exists('weak', $data)) {
$this->setWeak($data['weak']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getVeryStrong(): ?string
diff --git a/src/Model/AmountAdjustmentInstructionNone.php b/src/Model/AmountAdjustmentInstructionNone.php
index 092a74256..f3b9a9d4d 100644
--- a/src/Model/AmountAdjustmentInstructionNone.php
+++ b/src/Model/AmountAdjustmentInstructionNone.php
@@ -14,15 +14,20 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AmountAdjustmentInstructionNone implements InvoiceRetryAmountAdjustmentInstruction
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/AmountAdjustmentInstructionPartial.php b/src/Model/AmountAdjustmentInstructionPartial.php
index b6d48744c..13ea312ab 100644
--- a/src/Model/AmountAdjustmentInstructionPartial.php
+++ b/src/Model/AmountAdjustmentInstructionPartial.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AmountAdjustmentInstructionPartial implements InvoiceRetryAmountAdjustmentInstruction
{
+ use HasMetadata;
+
public const TYPE_PERCENT = 'percent';
public const TYPE_FIXED = 'fixed';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('afterApprovalPolicy', $data)) {
$this->setAfterApprovalPolicy($data['afterApprovalPolicy']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/AmountAdjustmentInstructionPartialAfterApprovalPolicyFactory.php b/src/Model/AmountAdjustmentInstructionPartialAfterApprovalPolicyFactory.php
index 146d1396e..3d32adcc5 100644
--- a/src/Model/AmountAdjustmentInstructionPartialAfterApprovalPolicyFactory.php
+++ b/src/Model/AmountAdjustmentInstructionPartialAfterApprovalPolicyFactory.php
@@ -18,11 +18,11 @@
class AmountAdjustmentInstructionPartialAfterApprovalPolicyFactory
{
- public static function from(array $data = []): AmountAdjustmentInstructionPartialAfterApprovalPolicy
+ public static function from(array $data = [], array $metadata = []): AmountAdjustmentInstructionPartialAfterApprovalPolicy
{
return match ($data['method']) {
- 'discount-amount-remaining' => AmountAdjustmentPoliciesDiscountAmountRemaining::from($data),
- 'none' => AmountAdjustmentPoliciesNone::from($data),
+ 'discount-amount-remaining' => AmountAdjustmentPoliciesDiscountAmountRemaining::from($data, $metadata),
+ 'none' => AmountAdjustmentPoliciesNone::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/AmountAdjustmentPoliciesDiscountAmountRemaining.php b/src/Model/AmountAdjustmentPoliciesDiscountAmountRemaining.php
index be60bc948..cf7f1e2ac 100644
--- a/src/Model/AmountAdjustmentPoliciesDiscountAmountRemaining.php
+++ b/src/Model/AmountAdjustmentPoliciesDiscountAmountRemaining.php
@@ -14,15 +14,20 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AmountAdjustmentPoliciesDiscountAmountRemaining implements AmountAdjustmentInstructionPartialAfterApprovalPolicy
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/AmountAdjustmentPoliciesNone.php b/src/Model/AmountAdjustmentPoliciesNone.php
index cf12055a6..0de1c409b 100644
--- a/src/Model/AmountAdjustmentPoliciesNone.php
+++ b/src/Model/AmountAdjustmentPoliciesNone.php
@@ -14,15 +14,20 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AmountAdjustmentPoliciesNone implements AmountAdjustmentInstructionPartialAfterApprovalPolicy
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/Antom.php b/src/Model/Antom.php
index 87d9cafee..4dd2973a4 100644
--- a/src/Model/Antom.php
+++ b/src/Model/Antom.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Antom extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Antom',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AntomCredentials
diff --git a/src/Model/AntomCredentials.php b/src/Model/AntomCredentials.php
index 5fc54a48f..0bf98e857 100644
--- a/src/Model/AntomCredentials.php
+++ b/src/Model/AntomCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AntomCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('privateKey', $data)) {
$this->setPrivateKey($data['privateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/ApcoPay.php b/src/Model/ApcoPay.php
index f2a7af5e4..e588984c2 100644
--- a/src/Model/ApcoPay.php
+++ b/src/Model/ApcoPay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ApcoPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ApcoPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ApcoPayCredentials
diff --git a/src/Model/ApcoPayCredentials.php b/src/Model/ApcoPayCredentials.php
index 00048939f..79f1246dd 100644
--- a/src/Model/ApcoPayCredentials.php
+++ b/src/Model/ApcoPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApcoPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('profileID', $data)) {
$this->setProfileID($data['profileID']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('MerchantPassword', $data)) {
$this->setMerchantPassword($data['MerchantPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getProfileID(): string
diff --git a/src/Model/ApcoPaySettings.php b/src/Model/ApcoPaySettings.php
index 06e309ddd..f0d62202a 100644
--- a/src/Model/ApcoPaySettings.php
+++ b/src/Model/ApcoPaySettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApcoPaySettings implements JsonSerializable
{
+ use HasMetadata;
+
public const METHOD_AFTERPAY = 'AFTERPAY';
public const METHOD_BANCONTACT = 'BANCONTACT';
@@ -42,16 +45,17 @@ class ApcoPaySettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/ApiKey.php b/src/Model/ApiKey.php
index aa8d35255..3b1ea85e5 100644
--- a/src/Model/ApiKey.php
+++ b/src/Model/ApiKey.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApiKey implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_SECRET = 'secret';
public const TYPE_PUBLISHABLE = 'publishable';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -58,11 +61,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/ApiKeyScope.php b/src/Model/ApiKeyScope.php
index ebe18ba46..6cbdcf1d5 100644
--- a/src/Model/ApiKeyScope.php
+++ b/src/Model/ApiKeyScope.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApiKeyScope implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('organizationId', $data)) {
$this->setOrganizationId($data['organizationId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('customFieldName', $data)) {
$this->setCustomFieldName($data['customFieldName']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ApiLogSummary.php b/src/Model/ApiLogSummary.php
index b3fbe9177..be8254ff7 100644
--- a/src/Model/ApiLogSummary.php
+++ b/src/Model/ApiLogSummary.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApiLogSummary implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ApiLogSummaryData.php b/src/Model/ApiLogSummaryData.php
index 5461faa70..55822afe9 100644
--- a/src/Model/ApiLogSummaryData.php
+++ b/src/Model/ApiLogSummaryData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApiLogSummaryData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('route', $data)) {
$this->setRoute($data['route']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('options', $data)) {
$this->setOptions($data['options']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRoute(): ?string
diff --git a/src/Model/ApiTracking.php b/src/Model/ApiTracking.php
index 67a340f4e..c03aac612 100644
--- a/src/Model/ApiTracking.php
+++ b/src/Model/ApiTracking.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApiTracking implements JsonSerializable
{
+ use HasMetadata;
+
public const METHOD_HEAD = 'HEAD';
public const METHOD_GET = 'GET';
@@ -34,7 +37,7 @@ class ApiTracking implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -90,11 +93,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/ApiTrackingEmbedded.php b/src/Model/ApiTrackingEmbedded.php
index d807b3238..00a470f19 100644
--- a/src/Model/ApiTrackingEmbedded.php
+++ b/src/Model/ApiTrackingEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApiTrackingEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('organization', $data)) {
$this->setOrganization($data['organization']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getOrganization(): ?Organization
diff --git a/src/Model/ApiTrackingUser.php b/src/Model/ApiTrackingUser.php
index 443f87285..dd6dcb8b7 100644
--- a/src/Model/ApiTrackingUser.php
+++ b/src/Model/ApiTrackingUser.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApiTrackingUser implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('userId', $data)) {
$this->setUserId($data['userId']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('isSupport', $data)) {
$this->setIsSupport($data['isSupport']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUserId(): ?string
diff --git a/src/Model/ApplePayFeature.php b/src/Model/ApplePayFeature.php
index e76845b28..fc5c0fd44 100644
--- a/src/Model/ApplePayFeature.php
+++ b/src/Model/ApplePayFeature.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ApplePayFeature implements PaymentCardFeature
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('displayName', $data)) {
$this->setDisplayName($data['displayName']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('country', $data)) {
$this->setCountry($data['country']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/ApplePayValidation.php b/src/Model/ApplePayValidation.php
index 252ac2f41..22fdf07b2 100644
--- a/src/Model/ApplePayValidation.php
+++ b/src/Model/ApplePayValidation.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ApplePayValidation extends DigitalWalletValidation
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'type' => 'Apple Pay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('validationRequest', $data)) {
$this->setValidationRequest($data['validationRequest']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('validationResponse', $data)) {
$this->setValidationResponse($data['validationResponse']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getValidationRequest(): ApplePayValidationValidationRequest
diff --git a/src/Model/ApplePayValidationValidationRequest.php b/src/Model/ApplePayValidationValidationRequest.php
index 1f34c7141..021abdcae 100644
--- a/src/Model/ApplePayValidationValidationRequest.php
+++ b/src/Model/ApplePayValidationValidationRequest.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApplePayValidationValidationRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('validationUrl', $data)) {
$this->setValidationUrl($data['validationUrl']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('displayName', $data)) {
$this->setDisplayName($data['displayName']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getValidationUrl(): ?string
diff --git a/src/Model/Application.php b/src/Model/Application.php
index 1a29fb871..4b0d05883 100644
--- a/src/Model/Application.php
+++ b/src/Model/Application.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Application implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING_APPROVAL = 'pending-approval';
public const STATUS_AVAILABLE = 'available';
@@ -84,7 +87,7 @@ class Application implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -131,11 +134,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/ApplicationInstance.php b/src/Model/ApplicationInstance.php
index 9aafc220c..8397006e0 100644
--- a/src/Model/ApplicationInstance.php
+++ b/src/Model/ApplicationInstance.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApplicationInstance implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ENABLING = 'enabling';
public const STATUS_ENABLED = 'enabled';
@@ -30,7 +33,7 @@ class ApplicationInstance implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
@@ -50,11 +53,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): ?string
diff --git a/src/Model/ApplicationInstanceConfiguration.php b/src/Model/ApplicationInstanceConfiguration.php
index 3a0d173c7..d1ae9da7d 100644
--- a/src/Model/ApplicationInstanceConfiguration.php
+++ b/src/Model/ApplicationInstanceConfiguration.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ApplicationInstanceConfiguration implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ArrayCustomField.php b/src/Model/ArrayCustomField.php
index 252c6bd7d..ddf84c50e 100644
--- a/src/Model/ArrayCustomField.php
+++ b/src/Model/ArrayCustomField.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ArrayCustomField implements CustomField
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/ArrayCustomFieldAdditionalSchema.php b/src/Model/ArrayCustomFieldAdditionalSchema.php
index 11f45df54..a92193953 100644
--- a/src/Model/ArrayCustomFieldAdditionalSchema.php
+++ b/src/Model/ArrayCustomFieldAdditionalSchema.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ArrayCustomFieldAdditionalSchema implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('allowedValues', $data)) {
$this->setAllowedValues($data['allowedValues']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('default', $data)) {
$this->setDefault($data['default']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/AsiaPay.php b/src/Model/AsiaPay.php
index 6324b1c1b..e3ed41a91 100644
--- a/src/Model/AsiaPay.php
+++ b/src/Model/AsiaPay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AsiaPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'AsiaPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AsiaPayCredentials
diff --git a/src/Model/AsiaPayCredentials.php b/src/Model/AsiaPayCredentials.php
index c6cb8f799..75ee041b7 100644
--- a/src/Model/AsiaPayCredentials.php
+++ b/src/Model/AsiaPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AsiaPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/AsiaPaySettings.php b/src/Model/AsiaPaySettings.php
index da5435ab9..a7ffe428a 100644
--- a/src/Model/AsiaPaySettings.php
+++ b/src/Model/AsiaPaySettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AsiaPaySettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('baseUrl', $data)) {
$this->setBaseUrl($data['baseUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBaseUrl(): string
diff --git a/src/Model/AsiaPaymentGateway.php b/src/Model/AsiaPaymentGateway.php
index 91c5479a0..f9c51821f 100644
--- a/src/Model/AsiaPaymentGateway.php
+++ b/src/Model/AsiaPaymentGateway.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AsiaPaymentGateway extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'AsiaPaymentGateway',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AsiaPaymentGatewayCredentials
diff --git a/src/Model/AsiaPaymentGatewayCredentials.php b/src/Model/AsiaPaymentGatewayCredentials.php
index 15a91bdbc..e97241966 100644
--- a/src/Model/AsiaPaymentGatewayCredentials.php
+++ b/src/Model/AsiaPaymentGatewayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AsiaPaymentGatewayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantNumber', $data)) {
$this->setMerchantNumber($data['merchantNumber']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantNumber(): string
diff --git a/src/Model/AsiaPaymentGatewaySettings.php b/src/Model/AsiaPaymentGatewaySettings.php
index bea00404d..5e3682267 100644
--- a/src/Model/AsiaPaymentGatewaySettings.php
+++ b/src/Model/AsiaPaymentGatewaySettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AsiaPaymentGatewaySettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('use3DSEndpoint', $data)) {
$this->setUse3DSEndpoint($data['use3DSEndpoint']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUse3DSEndpoint(): ?bool
diff --git a/src/Model/AstroPayCard.php b/src/Model/AstroPayCard.php
index 988048af7..ff451a06c 100644
--- a/src/Model/AstroPayCard.php
+++ b/src/Model/AstroPayCard.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AstroPayCard extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'AstroPayCard',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AstroPayCardCredentials
diff --git a/src/Model/AstroPayCardCredentials.php b/src/Model/AstroPayCardCredentials.php
index 535afc449..3c95d34d4 100644
--- a/src/Model/AstroPayCardCredentials.php
+++ b/src/Model/AstroPayCardCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AstroPayCardCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('x_login', $data)) {
$this->setXLogin($data['x_login']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('api_key', $data)) {
$this->setApiKey($data['api_key']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getXLogin(): string
diff --git a/src/Model/AstroPayCardSettings.php b/src/Model/AstroPayCardSettings.php
index cb3fd324e..0cb497320 100644
--- a/src/Model/AstroPayCardSettings.php
+++ b/src/Model/AstroPayCardSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AstroPayCardSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('oneTouchApi', $data)) {
$this->setOneTouchApi($data['oneTouchApi']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantLogoUrl', $data)) {
$this->setMerchantLogoUrl($data['merchantLogoUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getOneTouchApi(): ?bool
diff --git a/src/Model/Attachment.php b/src/Model/Attachment.php
index e90823a71..b1f78611b 100644
--- a/src/Model/Attachment.php
+++ b/src/Model/Attachment.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Attachment implements JsonSerializable
{
+ use HasMetadata;
+
public const RELATED_TYPE_CUSTOMER = 'customer';
public const RELATED_TYPE_CUSTOMER_TIMELINE_COMMENT = 'customer-timeline-comment';
@@ -52,7 +55,7 @@ class Attachment implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -84,11 +87,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/AttachmentEmbedded.php b/src/Model/AttachmentEmbedded.php
index f959e4bc7..d86df5a32 100644
--- a/src/Model/AttachmentEmbedded.php
+++ b/src/Model/AttachmentEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AttachmentEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): ?File
diff --git a/src/Model/AuthenticationOptions.php b/src/Model/AuthenticationOptions.php
index 5caa9a1fc..23ec30bfa 100644
--- a/src/Model/AuthenticationOptions.php
+++ b/src/Model/AuthenticationOptions.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AuthenticationOptions implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('passwordPattern', $data)) {
$this->setPasswordPattern($data['passwordPattern']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPasswordPattern(): ?string
diff --git a/src/Model/AuthenticationTokenFactory.php b/src/Model/AuthenticationTokenFactory.php
index 720263b70..fc0ec4e9d 100644
--- a/src/Model/AuthenticationTokenFactory.php
+++ b/src/Model/AuthenticationTokenFactory.php
@@ -18,11 +18,11 @@
class AuthenticationTokenFactory
{
- public static function from(array $data = []): AuthenticationToken
+ public static function from(array $data = [], array $metadata = []): AuthenticationToken
{
return match ($data['mode']) {
- 'passwordless' => AuthenticationTokenPasswordlessMode::from($data),
- 'password' => AuthenticationTokenPasswordMode::from($data),
+ 'passwordless' => AuthenticationTokenPasswordlessMode::from($data, $metadata),
+ 'password' => AuthenticationTokenPasswordMode::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/AuthenticationTokenPasswordMode.php b/src/Model/AuthenticationTokenPasswordMode.php
index 94c513bde..be7946449 100644
--- a/src/Model/AuthenticationTokenPasswordMode.php
+++ b/src/Model/AuthenticationTokenPasswordMode.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class AuthenticationTokenPasswordMode implements AuthenticationToken
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMode(): string
diff --git a/src/Model/AuthenticationTokenPasswordlessMode.php b/src/Model/AuthenticationTokenPasswordlessMode.php
index 2e2400a80..fe3f4ca2e 100644
--- a/src/Model/AuthenticationTokenPasswordlessMode.php
+++ b/src/Model/AuthenticationTokenPasswordlessMode.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class AuthenticationTokenPasswordlessMode implements AuthenticationToken
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customerId', $data)) {
$this->setCustomerId($data['customerId']);
@@ -41,11 +44,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMode(): string
diff --git a/src/Model/AuthenticationTokenResponse.php b/src/Model/AuthenticationTokenResponse.php
index 9ee6b0cb5..ca66fcba6 100644
--- a/src/Model/AuthenticationTokenResponse.php
+++ b/src/Model/AuthenticationTokenResponse.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AuthenticationTokenResponse implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -45,11 +48,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/AuthorizeNet.php b/src/Model/AuthorizeNet.php
index c68af9e93..ec9033f4b 100644
--- a/src/Model/AuthorizeNet.php
+++ b/src/Model/AuthorizeNet.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class AuthorizeNet extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'AuthorizeNet',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AuthorizeNetCredentials
diff --git a/src/Model/AuthorizeNetCredentials.php b/src/Model/AuthorizeNetCredentials.php
index d05a3703b..139cc3538 100644
--- a/src/Model/AuthorizeNetCredentials.php
+++ b/src/Model/AuthorizeNetCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AuthorizeNetCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiLoginId', $data)) {
$this->setApiLoginId($data['apiLoginId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('transactionKey', $data)) {
$this->setTransactionKey($data['transactionKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiLoginId(): string
diff --git a/src/Model/AvalaraCredential.php b/src/Model/AvalaraCredential.php
index 99a8ea8dc..4c12b821b 100644
--- a/src/Model/AvalaraCredential.php
+++ b/src/Model/AvalaraCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class AvalaraCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -27,7 +30,7 @@ class AvalaraCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -50,11 +53,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/Awepay.php b/src/Model/Awepay.php
index bbcb93e49..355781f76 100644
--- a/src/Model/Awepay.php
+++ b/src/Model/Awepay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Awepay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Awepay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): AwepayCredentials
diff --git a/src/Model/AwepayCredentials.php b/src/Model/AwepayCredentials.php
index 93415ed62..ac1f07e8e 100644
--- a/src/Model/AwepayCredentials.php
+++ b/src/Model/AwepayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AwepayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sid', $data)) {
$this->setSid($data['sid']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSid(): string
diff --git a/src/Model/AwepaySettings.php b/src/Model/AwepaySettings.php
index 238c593d5..775a08cc9 100644
--- a/src/Model/AwepaySettings.php
+++ b/src/Model/AwepaySettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class AwepaySettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('useP2pRest', $data)) {
$this->setUseP2pRest($data['useP2pRest']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUseP2pRest(): ?bool
diff --git a/src/Model/BBANInstrument.php b/src/Model/BBANInstrument.php
index aec3dcaeb..c27e3811b 100644
--- a/src/Model/BBANInstrument.php
+++ b/src/Model/BBANInstrument.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class BBANInstrument implements BankAccountInstrument
{
+ use HasMetadata;
+
public const ACCOUNT_TYPE_CHECKING = 'checking';
public const ACCOUNT_TYPE_SAVINGS = 'savings';
@@ -24,7 +28,7 @@ class BBANInstrument implements BankAccountInstrument
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accountNumber', $data)) {
$this->setAccountNumber($data['accountNumber']);
@@ -44,11 +48,12 @@ public function __construct(array $data = [])
if (array_key_exists('last4', $data)) {
$this->setLast4($data['last4']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccountNumberType(): string
diff --git a/src/Model/BBANType.php b/src/Model/BBANType.php
index 20a0871cd..8e18328df 100644
--- a/src/Model/BBANType.php
+++ b/src/Model/BBANType.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
-class BBANType extends BankAccountCreatePlain
+use Rebilly\Sdk\Trait\HasMetadata;
+
+class BBANType implements BankAccountCreatePlain
{
+ use HasMetadata;
+
public const METHOD_ACH = 'ach';
public const ACCOUNT_TYPE_CHECKING = 'checking';
@@ -26,12 +30,8 @@ class BBANType extends BankAccountCreatePlain
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
- parent::__construct([
- 'accountNumberType' => 'BBAN',
- ] + $data);
-
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
}
@@ -65,11 +65,17 @@ public function __construct(array $data = [])
if (array_key_exists('useAsBackup', $data)) {
$this->setUseAsBackup($data['useAsBackup']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
+ }
+
+ public function getAccountNumberType(): string
+ {
+ return 'BBAN';
}
public function getMethod(): string
@@ -214,7 +220,9 @@ public function setUseAsBackup(null|bool $useAsBackup): static
public function jsonSerialize(): array
{
- $data = [];
+ $data = [
+ 'accountNumberType' => 'BBAN',
+ ];
if (array_key_exists('method', $this->fields)) {
$data['method'] = $this->fields['method'];
}
@@ -249,6 +257,6 @@ public function jsonSerialize(): array
$data['useAsBackup'] = $this->fields['useAsBackup'];
}
- return parent::jsonSerialize() + $data;
+ return $data;
}
}
diff --git a/src/Model/BVNK.php b/src/Model/BVNK.php
index 6cb62da81..02fd60eee 100644
--- a/src/Model/BVNK.php
+++ b/src/Model/BVNK.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class BVNK extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'BVNK',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): BVNKCredentials
diff --git a/src/Model/BVNKCredentials.php b/src/Model/BVNKCredentials.php
index 995dd65e7..679d2b180 100644
--- a/src/Model/BVNKCredentials.php
+++ b/src/Model/BVNKCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BVNKCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('hawkAuthKey', $data)) {
$this->setHawkAuthKey($data['hawkAuthKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/BVNKSettings.php b/src/Model/BVNKSettings.php
index 3e9f76b09..d67e73e80 100644
--- a/src/Model/BVNKSettings.php
+++ b/src/Model/BVNKSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BVNKSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('payoutCurrency', $data)) {
$this->setPayoutCurrency($data['payoutCurrency']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('destinationTagCustomField', $data)) {
$this->setDestinationTagCustomField($data['destinationTagCustomField']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPayoutCurrency(): ?string
diff --git a/src/Model/BalanceTransactionFactory.php b/src/Model/BalanceTransactionFactory.php
index d4ae21c10..b5d9b22d1 100644
--- a/src/Model/BalanceTransactionFactory.php
+++ b/src/Model/BalanceTransactionFactory.php
@@ -18,16 +18,16 @@
class BalanceTransactionFactory
{
- public static function from(array $data = []): BalanceTransaction
+ public static function from(array $data = [], array $metadata = []): BalanceTransaction
{
return match ($data['type']) {
- 'buy-fee' => BuyFeeTransaction::from($data),
- 'charge' => ChargeTransaction::from($data),
- 'refund' => RefundTransaction::from($data),
- 'reverse' => ReverseTransaction::from($data),
- 'risk-reserve-release' => RiskReserveReleaseTransaction::from($data),
- 'risk-reserve' => RiskReserveTransaction::from($data),
- 'sell-fee' => SellFeeTransaction::from($data),
+ 'buy-fee' => BuyFeeTransaction::from($data, $metadata),
+ 'charge' => ChargeTransaction::from($data, $metadata),
+ 'refund' => RefundTransaction::from($data, $metadata),
+ 'reverse' => ReverseTransaction::from($data, $metadata),
+ 'risk-reserve-release' => RiskReserveReleaseTransaction::from($data, $metadata),
+ 'risk-reserve' => RiskReserveTransaction::from($data, $metadata),
+ 'sell-fee' => SellFeeTransaction::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/Bambora.php b/src/Model/Bambora.php
index 2a13ec3d0..331999e71 100644
--- a/src/Model/Bambora.php
+++ b/src/Model/Bambora.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Bambora extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Bambora',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): BamboraCredentials
diff --git a/src/Model/BamboraCredentials.php b/src/Model/BamboraCredentials.php
index 3d98b6a7c..b886d9e62 100644
--- a/src/Model/BamboraCredentials.php
+++ b/src/Model/BamboraCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BamboraCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiPasscode', $data)) {
$this->setApiPasscode($data['apiPasscode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/BankAccount.php b/src/Model/BankAccount.php
index 51ba4572d..a18af0cf0 100644
--- a/src/Model/BankAccount.php
+++ b/src/Model/BankAccount.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class BankAccount implements PaymentInstrument
{
+ use HasMetadata;
+
public const ACCOUNT_NUMBER_TYPE_BBAN = 'BBAN';
public const ACCOUNT_NUMBER_TYPE_IBAN = 'IBAN';
@@ -35,7 +38,7 @@ class BankAccount implements PaymentInstrument
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -100,11 +103,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/BankAccountCreatePlain.php b/src/Model/BankAccountCreatePlain.php
index ffe6c08a6..4393d6c9a 100644
--- a/src/Model/BankAccountCreatePlain.php
+++ b/src/Model/BankAccountCreatePlain.php
@@ -14,61 +14,39 @@
namespace Rebilly\Sdk\Model;
-use InvalidArgumentException;
-
-abstract class BankAccountCreatePlain implements PostPaymentInstrumentRequest, PaymentInstruction
+interface BankAccountCreatePlain extends PostPaymentInstrumentRequest, PaymentInstruction
{
- public const ACCOUNT_NUMBER_TYPE_IBAN = 'IBAN';
-
- public const ACCOUNT_NUMBER_TYPE_BBAN = 'BBAN';
-
- private array $fields = [];
-
- protected function __construct(array $data = [])
- {
- if (array_key_exists('accountNumberType', $data)) {
- $this->setAccountNumberType($data['accountNumberType']);
- }
- }
-
- public static function from(array $data = []): self
- {
- switch ($data['accountNumberType']) {
- case 'BBAN':
- return BBANType::from($data);
- case 'IBAN':
- return IBANType::from($data);
- }
-
- throw new InvalidArgumentException("Unsupported accountNumberType value: '{$data['accountNumberType']}'");
- }
-
- public function getMethod(): string
- {
- return 'ach';
- }
-
- public function getAccountNumberType(): string
- {
- return $this->fields['accountNumberType'];
- }
-
- public function jsonSerialize(): array
- {
- $data = [
- 'method' => 'ach',
- ];
- if (array_key_exists('accountNumberType', $this->fields)) {
- $data['accountNumberType'] = $this->fields['accountNumberType'];
- }
-
- return $data;
- }
-
- private function setAccountNumberType(string $accountNumberType): static
- {
- $this->fields['accountNumberType'] = $accountNumberType;
-
- return $this;
- }
+ public function getAccountNumberType(): string;
+
+ public function getCustomerId(): string;
+
+ public function setCustomerId(string $customerId): static;
+
+ public function getAccountNumber(): string;
+
+ public function setAccountNumber(string $accountNumber): static;
+
+ public function getBankName(): ?string;
+
+ public function setBankName(null|string $bankName): static;
+
+ public function getBic(): ?string;
+
+ public function setBic(null|string $bic): static;
+
+ public function getBillingAddress(): ContactObject;
+
+ public function setBillingAddress(ContactObject|array $billingAddress): static;
+
+ public function getCustomFields(): ?array;
+
+ public function setCustomFields(null|array $customFields): static;
+
+ public function getRiskMetadata(): ?RiskMetadata;
+
+ public function setRiskMetadata(null|RiskMetadata|array $riskMetadata): static;
+
+ public function getUseAsBackup(): ?bool;
+
+ public function setUseAsBackup(null|bool $useAsBackup): static;
}
diff --git a/src/Model/BankAccountCreatePlainFactory.php b/src/Model/BankAccountCreatePlainFactory.php
new file mode 100644
index 000000000..3a651f269
--- /dev/null
+++ b/src/Model/BankAccountCreatePlainFactory.php
@@ -0,0 +1,29 @@
+ BBANType::from($data, $metadata),
+ 'IBAN' => IBANType::from($data, $metadata),
+ default => throw new UnknownDiscriminatorValueException(),
+ };
+ }
+}
diff --git a/src/Model/BankAccountEmbedded.php b/src/Model/BankAccountEmbedded.php
index 91fdd4f4a..fa6147614 100644
--- a/src/Model/BankAccountEmbedded.php
+++ b/src/Model/BankAccountEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BankAccountEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/BankAccountInstrumentFactory.php b/src/Model/BankAccountInstrumentFactory.php
index c0faa1a42..529b0ebec 100644
--- a/src/Model/BankAccountInstrumentFactory.php
+++ b/src/Model/BankAccountInstrumentFactory.php
@@ -18,11 +18,11 @@
class BankAccountInstrumentFactory
{
- public static function from(array $data = []): BankAccountInstrument
+ public static function from(array $data = [], array $metadata = []): BankAccountInstrument
{
return match ($data['accountNumberType']) {
- 'BBAN' => BBANInstrument::from($data),
- 'IBAN' => IBANInstrument::from($data),
+ 'BBAN' => BBANInstrument::from($data, $metadata),
+ 'IBAN' => IBANInstrument::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/BankAccountToken.php b/src/Model/BankAccountToken.php
index 372ec87d6..56e6dde1f 100644
--- a/src/Model/BankAccountToken.php
+++ b/src/Model/BankAccountToken.php
@@ -16,16 +16,19 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class BankAccountToken implements CompositeToken
{
+ use HasMetadata;
+
public const METHOD_ACH = 'ach';
public const METHOD_ECHECK = 'echeck';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
@@ -63,11 +66,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/BankAccountUpdatePlain.php b/src/Model/BankAccountUpdatePlain.php
index b7fb9ddac..80806a6c0 100644
--- a/src/Model/BankAccountUpdatePlain.php
+++ b/src/Model/BankAccountUpdatePlain.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class BankAccountUpdatePlain implements PatchPaymentInstrumentRequest
{
+ use HasMetadata;
+
public const ACCOUNT_TYPE_CHECKING = 'checking';
public const ACCOUNT_TYPE_SAVINGS = 'savings';
@@ -24,7 +28,7 @@ class BankAccountUpdatePlain implements PatchPaymentInstrumentRequest
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('bankName', $data)) {
$this->setBankName($data['bankName']);
@@ -44,11 +48,12 @@ public function __construct(array $data = [])
if (array_key_exists('useAsBackup', $data)) {
$this->setUseAsBackup($data['useAsBackup']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBankName(): ?string
diff --git a/src/Model/BankSEND.php b/src/Model/BankSEND.php
index 4e2524e8f..45ceab1aa 100644
--- a/src/Model/BankSEND.php
+++ b/src/Model/BankSEND.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class BankSEND extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'BankSEND',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): BankSENDCredentials
diff --git a/src/Model/BankSENDCredentials.php b/src/Model/BankSENDCredentials.php
index b0ea11086..096c8fa01 100644
--- a/src/Model/BankSENDCredentials.php
+++ b/src/Model/BankSENDCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BankSENDCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantToken', $data)) {
$this->setMerchantToken($data['merchantToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/BillingPortal.php b/src/Model/BillingPortal.php
index 82e415cf3..77cd0c176 100644
--- a/src/Model/BillingPortal.php
+++ b/src/Model/BillingPortal.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BillingPortal implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -61,11 +64,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/BillingPortalCustomization.php b/src/Model/BillingPortalCustomization.php
index 6c04e7e67..d41413d59 100644
--- a/src/Model/BillingPortalCustomization.php
+++ b/src/Model/BillingPortalCustomization.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BillingPortalCustomization implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('logoId', $data)) {
$this->setLogoId($data['logoId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('links', $data)) {
$this->setLinks($data['links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLogoId(): ?string
diff --git a/src/Model/BillingPortalCustomizationColors.php b/src/Model/BillingPortalCustomizationColors.php
index 664e0361d..069b69d5d 100644
--- a/src/Model/BillingPortalCustomizationColors.php
+++ b/src/Model/BillingPortalCustomizationColors.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BillingPortalCustomizationColors implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('primary', $data)) {
$this->setPrimary($data['primary']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secondary', $data)) {
$this->setSecondary($data['secondary']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrimary(): ?string
diff --git a/src/Model/BillingPortalCustomizationLinks.php b/src/Model/BillingPortalCustomizationLinks.php
index 0d1bed13f..27f63107c 100644
--- a/src/Model/BillingPortalCustomizationLinks.php
+++ b/src/Model/BillingPortalCustomizationLinks.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BillingPortalCustomizationLinks implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('refundPolicy', $data)) {
$this->setRefundPolicy($data['refundPolicy']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('termsOfService', $data)) {
$this->setTermsOfService($data['termsOfService']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRefundPolicy(): ?string
diff --git a/src/Model/BillingPortalFeatures.php b/src/Model/BillingPortalFeatures.php
index b6be9454b..60a003415 100644
--- a/src/Model/BillingPortalFeatures.php
+++ b/src/Model/BillingPortalFeatures.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BillingPortalFeatures implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('authenticateWithPassword', $data)) {
$this->setAuthenticateWithPassword($data['authenticateWithPassword']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentInstrumentDeactivate', $data)) {
$this->setPaymentInstrumentDeactivate($data['paymentInstrumentDeactivate']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAuthenticateWithPassword(): ?bool
diff --git a/src/Model/Bind.php b/src/Model/Bind.php
index 85efa0c79..3707c0a50 100644
--- a/src/Model/Bind.php
+++ b/src/Model/Bind.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Bind implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -44,11 +47,12 @@ public function __construct(array $data = [])
if (array_key_exists('actions', $data)) {
$this->setActions($data['actions']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/BitPay.php b/src/Model/BitPay.php
index 22cffc2e7..7ebcaef4b 100644
--- a/src/Model/BitPay.php
+++ b/src/Model/BitPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class BitPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'BitPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): BitPayCredentials
diff --git a/src/Model/BitPayCredentials.php b/src/Model/BitPayCredentials.php
index 51255241f..830c30fa8 100644
--- a/src/Model/BitPayCredentials.php
+++ b/src/Model/BitPayCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BitPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('token', $data)) {
$this->setToken($data['token']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getToken(): string
diff --git a/src/Model/Blocklist.php b/src/Model/Blocklist.php
index 32dd26168..d5f938c7e 100644
--- a/src/Model/Blocklist.php
+++ b/src/Model/Blocklist.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Blocklist implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_PAYMENT_CARD = 'payment-card';
public const TYPE_BANK_ACCOUNT = 'bank-account';
@@ -48,7 +51,7 @@ class Blocklist implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -77,11 +80,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/BlueSnap.php b/src/Model/BlueSnap.php
index e6487142e..9b12155fc 100644
--- a/src/Model/BlueSnap.php
+++ b/src/Model/BlueSnap.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class BlueSnap extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'BlueSnap',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): BlueSnapCredentials
diff --git a/src/Model/BlueSnapCredentials.php b/src/Model/BlueSnapCredentials.php
index 4e6de8b7b..a6a773033 100644
--- a/src/Model/BlueSnapCredentials.php
+++ b/src/Model/BlueSnapCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BlueSnapCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('dataProtectionKey', $data)) {
$this->setDataProtectionKey($data['dataProtectionKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/BlueSnapSettings.php b/src/Model/BlueSnapSettings.php
index b387c9f6d..750e795db 100644
--- a/src/Model/BlueSnapSettings.php
+++ b/src/Model/BlueSnapSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BlueSnapSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('enableMoto', $data)) {
$this->setEnableMoto($data['enableMoto']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('metadataCustomField', $data)) {
$this->setMetadataCustomField($data['metadataCustomField']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEnableMoto(): ?bool
diff --git a/src/Model/BooleanCustomField.php b/src/Model/BooleanCustomField.php
index 4f72f458d..16102707d 100644
--- a/src/Model/BooleanCustomField.php
+++ b/src/Model/BooleanCustomField.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class BooleanCustomField implements CustomField
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/BooleanCustomFieldAdditionalSchema.php b/src/Model/BooleanCustomFieldAdditionalSchema.php
index 98f9747d4..7599e51d1 100644
--- a/src/Model/BooleanCustomFieldAdditionalSchema.php
+++ b/src/Model/BooleanCustomFieldAdditionalSchema.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BooleanCustomFieldAdditionalSchema implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('required', $data)) {
$this->setRequired($data['required']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('default', $data)) {
$this->setDefault($data['default']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRequired(): ?bool
diff --git a/src/Model/BraintreePayments.php b/src/Model/BraintreePayments.php
index 2103e3b4e..4e95688a5 100644
--- a/src/Model/BraintreePayments.php
+++ b/src/Model/BraintreePayments.php
@@ -14,24 +14,32 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class BraintreePayments extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'BraintreePayments',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ if (array_key_exists('threeDSecureServer', $data)) {
+ $this->setThreeDSecureServer($data['threeDSecureServer']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): BraintreePaymentsCredentials
@@ -50,12 +58,31 @@ public function setCredentials(BraintreePaymentsCredentials|array $credentials):
return $this;
}
+ public function getThreeDSecureServer(): ?ThreeDSecureIO3dsServer
+ {
+ return $this->fields['threeDSecureServer'] ?? null;
+ }
+
+ public function setThreeDSecureServer(null|ThreeDSecureIO3dsServer|array $threeDSecureServer): static
+ {
+ if ($threeDSecureServer !== null && !($threeDSecureServer instanceof ThreeDSecureIO3dsServer)) {
+ $threeDSecureServer = ThreeDSecureIO3dsServer::from($threeDSecureServer);
+ }
+
+ $this->fields['threeDSecureServer'] = $threeDSecureServer;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
if (array_key_exists('credentials', $this->fields)) {
$data['credentials'] = $this->fields['credentials']->jsonSerialize();
}
+ if (array_key_exists('threeDSecureServer', $this->fields)) {
+ $data['threeDSecureServer'] = $this->fields['threeDSecureServer']?->jsonSerialize();
+ }
return parent::jsonSerialize() + $data;
}
diff --git a/src/Model/BraintreePaymentsCredentials.php b/src/Model/BraintreePaymentsCredentials.php
index 1d87e8084..2b133e677 100644
--- a/src/Model/BraintreePaymentsCredentials.php
+++ b/src/Model/BraintreePaymentsCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BraintreePaymentsCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantAccountId', $data)) {
$this->setMerchantAccountId($data['merchantAccountId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublicKey(): string
diff --git a/src/Model/BroadcastMessage.php b/src/Model/BroadcastMessage.php
index 2723a3600..450d227f7 100644
--- a/src/Model/BroadcastMessage.php
+++ b/src/Model/BroadcastMessage.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BroadcastMessage implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_DRAFT = 'draft';
public const STATUS_SENDING = 'sending';
@@ -30,7 +33,7 @@ class BroadcastMessage implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -62,11 +65,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/BroadcastMessageMessages.php b/src/Model/BroadcastMessageMessages.php
index 2e2279af3..a1f79c506 100644
--- a/src/Model/BroadcastMessageMessages.php
+++ b/src/Model/BroadcastMessageMessages.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BroadcastMessageMessages implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('templates', $data)) {
$this->setTemplates($data['templates']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/BroadcastMessageMessagesTemplates.php b/src/Model/BroadcastMessageMessagesTemplates.php
index 15327f815..b8f7ac2a7 100644
--- a/src/Model/BroadcastMessageMessagesTemplates.php
+++ b/src/Model/BroadcastMessageMessagesTemplates.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BroadcastMessageMessagesTemplates implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('from', $data)) {
$this->setFrom($data['from']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('locale', $data)) {
$this->setLocale($data['locale']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFrom(): string
diff --git a/src/Model/Buckaroo.php b/src/Model/Buckaroo.php
index f92c27472..d0e98e74a 100644
--- a/src/Model/Buckaroo.php
+++ b/src/Model/Buckaroo.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Buckaroo extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Buckaroo',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): BuckarooCredentials
diff --git a/src/Model/BuckarooCredentials.php b/src/Model/BuckarooCredentials.php
index f708d3a93..ba34e0c40 100644
--- a/src/Model/BuckarooCredentials.php
+++ b/src/Model/BuckarooCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BuckarooCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('schemeKey', $data)) {
$this->setSchemeKey($data['schemeKey']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSchemeKey(): ?string
diff --git a/src/Model/BuckarooSettings.php b/src/Model/BuckarooSettings.php
index f6eda882f..4f8cd2145 100644
--- a/src/Model/BuckarooSettings.php
+++ b/src/Model/BuckarooSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BuckarooSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('useSepaRecurring', $data)) {
$this->setUseSepaRecurring($data['useSepaRecurring']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUseSepaRecurring(): ?bool
diff --git a/src/Model/BuyFeeTransaction.php b/src/Model/BuyFeeTransaction.php
index e7761d9c9..d28215d02 100644
--- a/src/Model/BuyFeeTransaction.php
+++ b/src/Model/BuyFeeTransaction.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class BuyFeeTransaction implements BalanceTransaction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/BuyFeeTransactionFee.php b/src/Model/BuyFeeTransactionFee.php
index 8a1e6ad91..28ca75195 100644
--- a/src/Model/BuyFeeTransactionFee.php
+++ b/src/Model/BuyFeeTransactionFee.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class BuyFeeTransactionFee implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/CASHlib.php b/src/Model/CASHlib.php
index 61fa618de..6deade755 100644
--- a/src/Model/CASHlib.php
+++ b/src/Model/CASHlib.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CASHlib extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'CASHlib',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CASHlibCredentials
diff --git a/src/Model/CASHlibCredentials.php b/src/Model/CASHlibCredentials.php
index 53b00e5d1..ae4a28135 100644
--- a/src/Model/CASHlibCredentials.php
+++ b/src/Model/CASHlibCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CASHlibCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/CCAvenue.php b/src/Model/CCAvenue.php
index 57c78aa66..27957ef43 100644
--- a/src/Model/CCAvenue.php
+++ b/src/Model/CCAvenue.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CCAvenue extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'CCAvenue',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CCAvenueCredentials
diff --git a/src/Model/CCAvenueCredentials.php b/src/Model/CCAvenueCredentials.php
index 74e3bb6f5..32206a000 100644
--- a/src/Model/CCAvenueCredentials.php
+++ b/src/Model/CCAvenueCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CCAvenueCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('workingKey', $data)) {
$this->setWorkingKey($data['workingKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/CCAvenueSettings.php b/src/Model/CCAvenueSettings.php
index fddf5f03f..5e2117b99 100644
--- a/src/Model/CCAvenueSettings.php
+++ b/src/Model/CCAvenueSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CCAvenueSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('useStandingInstructionApi', $data)) {
$this->setUseStandingInstructionApi($data['useStandingInstructionApi']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUseStandingInstructionApi(): ?bool
diff --git a/src/Model/CODVoucher.php b/src/Model/CODVoucher.php
index ef33ad627..90138fdf3 100644
--- a/src/Model/CODVoucher.php
+++ b/src/Model/CODVoucher.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CODVoucher extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'CODVoucher',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CODVoucherCredentials
diff --git a/src/Model/CODVoucherCredentials.php b/src/Model/CODVoucherCredentials.php
index 97ec12a55..a47aefc91 100644
--- a/src/Model/CODVoucherCredentials.php
+++ b/src/Model/CODVoucherCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CODVoucherCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecret', $data)) {
$this->setApiSecret($data['apiSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/Cardknox.php b/src/Model/Cardknox.php
index a888ca42f..75f68a4ad 100644
--- a/src/Model/Cardknox.php
+++ b/src/Model/Cardknox.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Cardknox extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Cardknox',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CardknoxCredentials
diff --git a/src/Model/CardknoxCredentials.php b/src/Model/CardknoxCredentials.php
index 120b1a797..7cd885382 100644
--- a/src/Model/CardknoxCredentials.php
+++ b/src/Model/CardknoxCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CardknoxCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('xKey', $data)) {
$this->setXKey($data['xKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getXKey(): string
diff --git a/src/Model/CashInstrument.php b/src/Model/CashInstrument.php
index 347bca9e8..1671c953b 100644
--- a/src/Model/CashInstrument.php
+++ b/src/Model/CashInstrument.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CashInstrument implements CustomerDefaultPaymentInstrument, TransactionPaymentInstrument
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('receivedBy', $data)) {
$this->setReceivedBy($data['receivedBy']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/CashToCode.php b/src/Model/CashToCode.php
index f326b7aa7..df5d65fee 100644
--- a/src/Model/CashToCode.php
+++ b/src/Model/CashToCode.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CashToCode extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'CashToCode',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CashToCodeCredentials
diff --git a/src/Model/CashToCodeCredentials.php b/src/Model/CashToCodeCredentials.php
index f9a6b428f..1d60e7441 100644
--- a/src/Model/CashToCodeCredentials.php
+++ b/src/Model/CashToCodeCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CashToCodeCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('cashToCodeUsername', $data)) {
$this->setCashToCodeUsername($data['cashToCodeUsername']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('mid', $data)) {
$this->setMid($data['mid']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCashToCodeUsername(): string
diff --git a/src/Model/CashToCodeSettings.php b/src/Model/CashToCodeSettings.php
index 31e3638ba..4e520440c 100644
--- a/src/Model/CashToCodeSettings.php
+++ b/src/Model/CashToCodeSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CashToCodeSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('baseUrl', $data)) {
$this->setBaseUrl($data['baseUrl']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('amounts', $data)) {
$this->setAmounts($data['amounts']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBaseUrl(): ?string
diff --git a/src/Model/Cashflows.php b/src/Model/Cashflows.php
index 2d2f07c7c..ac78e7f02 100644
--- a/src/Model/Cashflows.php
+++ b/src/Model/Cashflows.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Cashflows extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Cashflows',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CashflowsCredentials
diff --git a/src/Model/CashflowsCredentials.php b/src/Model/CashflowsCredentials.php
index b32ffb353..e2e80f6f0 100644
--- a/src/Model/CashflowsCredentials.php
+++ b/src/Model/CashflowsCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CashflowsCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('authId', $data)) {
$this->setAuthId($data['authId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('authPassword', $data)) {
$this->setAuthPassword($data['authPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAuthId(): string
diff --git a/src/Model/Cashier.php b/src/Model/Cashier.php
index 19f7e77e2..6663d31dd 100644
--- a/src/Model/Cashier.php
+++ b/src/Model/Cashier.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Cashier implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -69,11 +72,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): string
diff --git a/src/Model/Cashterminal.php b/src/Model/Cashterminal.php
index 8cad5a920..370a67f04 100644
--- a/src/Model/Cashterminal.php
+++ b/src/Model/Cashterminal.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Cashterminal extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Cashterminal',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CashterminalCredentials
diff --git a/src/Model/CashterminalCredentials.php b/src/Model/CashterminalCredentials.php
index a19358b6b..ce5307e7a 100644
--- a/src/Model/CashterminalCredentials.php
+++ b/src/Model/CashterminalCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CashterminalCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSecretKey(): string
diff --git a/src/Model/CauriPayment.php b/src/Model/CauriPayment.php
index 669c666d7..ed9c11054 100644
--- a/src/Model/CauriPayment.php
+++ b/src/Model/CauriPayment.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CauriPayment extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'CauriPayment',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CauriPaymentCredentials
diff --git a/src/Model/CauriPaymentCredentials.php b/src/Model/CauriPaymentCredentials.php
index f58aa102a..c16f11cf1 100644
--- a/src/Model/CauriPaymentCredentials.php
+++ b/src/Model/CauriPaymentCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CauriPaymentCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('privateKey', $data)) {
$this->setPrivateKey($data['privateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublicKey(): string
diff --git a/src/Model/Cayan.php b/src/Model/Cayan.php
index cd0af095e..dd8f30056 100644
--- a/src/Model/Cayan.php
+++ b/src/Model/Cayan.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Cayan extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Cayan',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CayanCredentials
diff --git a/src/Model/CayanCredentials.php b/src/Model/CayanCredentials.php
index 20744c784..dc950192d 100644
--- a/src/Model/CayanCredentials.php
+++ b/src/Model/CayanCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CayanCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantSiteId', $data)) {
$this->setMerchantSiteId($data['merchantSiteId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantKey', $data)) {
$this->setMerchantKey($data['merchantKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantSiteId(): string
diff --git a/src/Model/ChangeQuote.php b/src/Model/ChangeQuote.php
index 33d10d383..2e7f55b85 100644
--- a/src/Model/ChangeQuote.php
+++ b/src/Model/ChangeQuote.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuote implements Quote
{
+ use HasMetadata;
+
public const ACCEPTANCE_CONDITIONS_CUSTOMER = 'customer';
public const ACCEPTANCE_CONDITIONS_PAYMENT = 'payment';
@@ -37,7 +40,7 @@ class ChangeQuote implements Quote
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -108,11 +111,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/ChangeQuoteAcceptanceFulfillment.php b/src/Model/ChangeQuoteAcceptanceFulfillment.php
index 5ff77f4ba..b46106ee0 100644
--- a/src/Model/ChangeQuoteAcceptanceFulfillment.php
+++ b/src/Model/ChangeQuoteAcceptanceFulfillment.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuoteAcceptanceFulfillment implements JsonSerializable
{
+ use HasMetadata;
+
public const CONDITION_CUSTOMER = 'customer';
public const CONDITION_PAYMENT = 'payment';
@@ -26,7 +29,7 @@ class ChangeQuoteAcceptanceFulfillment implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('condition', $data)) {
$this->setCondition($data['condition']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('isFulfilled', $data)) {
$this->setIsFulfilled($data['isFulfilled']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCondition(): ?string
diff --git a/src/Model/ChangeQuoteEmbedded.php b/src/Model/ChangeQuoteEmbedded.php
index 881770f55..b2dfe2456 100644
--- a/src/Model/ChangeQuoteEmbedded.php
+++ b/src/Model/ChangeQuoteEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuoteEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('invoice', $data)) {
$this->setInvoice($data['invoice']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/ChangeQuoteInvoicePreview.php b/src/Model/ChangeQuoteInvoicePreview.php
index 2ae2c6162..9840724e2 100644
--- a/src/Model/ChangeQuoteInvoicePreview.php
+++ b/src/Model/ChangeQuoteInvoicePreview.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuoteInvoicePreview implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('items', $data)) {
$this->setItems($data['items']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCurrency(): ?string
diff --git a/src/Model/ChangeQuoteInvoicePreviewInitialAmounts.php b/src/Model/ChangeQuoteInvoicePreviewInitialAmounts.php
index 3b534a210..31ea4c338 100644
--- a/src/Model/ChangeQuoteInvoicePreviewInitialAmounts.php
+++ b/src/Model/ChangeQuoteInvoicePreviewInitialAmounts.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuoteInvoicePreviewInitialAmounts implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('taxAmount', $data)) {
$this->setTaxAmount($data['taxAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/ChangeQuoteInvoicePreviewItems.php b/src/Model/ChangeQuoteInvoicePreviewItems.php
index 86a031aeb..b84b57b22 100644
--- a/src/Model/ChangeQuoteInvoicePreviewItems.php
+++ b/src/Model/ChangeQuoteInvoicePreviewItems.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuoteInvoicePreviewItems implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_DEBIT = 'debit';
public const TYPE_CREDIT = 'credit';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quoteItemId', $data)) {
$this->setQuoteItemId($data['quoteItemId']);
@@ -68,11 +71,12 @@ public function __construct(array $data = [])
if (array_key_exists('trialTaxAmount', $data)) {
$this->setTrialTaxAmount($data['trialTaxAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getQuoteItemId(): ?string
diff --git a/src/Model/ChangeQuoteInvoicePreviewRecurringAmounts.php b/src/Model/ChangeQuoteInvoicePreviewRecurringAmounts.php
index 992d95df9..c596f79e7 100644
--- a/src/Model/ChangeQuoteInvoicePreviewRecurringAmounts.php
+++ b/src/Model/ChangeQuoteInvoicePreviewRecurringAmounts.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuoteInvoicePreviewRecurringAmounts implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('taxAmount', $data)) {
$this->setTaxAmount($data['taxAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/ChangeQuoteOrder.php b/src/Model/ChangeQuoteOrder.php
index 2e64394f8..74fc3422d 100644
--- a/src/Model/ChangeQuoteOrder.php
+++ b/src/Model/ChangeQuoteOrder.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuoteOrder implements JsonSerializable
{
+ use HasMetadata;
+
public const RENEWAL_POLICY_RESET = 'reset';
public const RENEWAL_POLICY_RETAIN = 'retain';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -58,11 +61,12 @@ public function __construct(array $data = [])
if (array_key_exists('shipping', $data)) {
$this->setShipping($data['shipping']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): string
diff --git a/src/Model/ChangeQuoteOrderUsageSettings.php b/src/Model/ChangeQuoteOrderUsageSettings.php
index 48f431cf1..3823f9430 100644
--- a/src/Model/ChangeQuoteOrderUsageSettings.php
+++ b/src/Model/ChangeQuoteOrderUsageSettings.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuoteOrderUsageSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const POLICY_RESET = 'reset';
public const POLICY_TRANSFER = 'transfer';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('productId', $data)) {
$this->setProductId($data['productId']);
@@ -32,11 +35,12 @@ public function __construct(array $data = [])
if (array_key_exists('policy', $data)) {
$this->setPolicy($data['policy']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getProductId(): string
diff --git a/src/Model/ChangeQuoteSignature.php b/src/Model/ChangeQuoteSignature.php
index 501b4aef2..e5337fc6e 100644
--- a/src/Model/ChangeQuoteSignature.php
+++ b/src/Model/ChangeQuoteSignature.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChangeQuoteSignature implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('showWrittenSignatureLines', $data)) {
$this->setShowWrittenSignatureLines($data['showWrittenSignatureLines']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('organizationPrintedName', $data)) {
$this->setOrganizationPrintedName($data['organizationPrintedName']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getShowWrittenSignatureLines(): ?bool
diff --git a/src/Model/ChargeTransaction.php b/src/Model/ChargeTransaction.php
index 0e311eb2c..80c6b219a 100644
--- a/src/Model/ChargeTransaction.php
+++ b/src/Model/ChargeTransaction.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChargeTransaction implements BalanceTransaction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -53,11 +56,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/Chase.php b/src/Model/Chase.php
index 80168dafb..27e645c3f 100644
--- a/src/Model/Chase.php
+++ b/src/Model/Chase.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Chase extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Chase',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ChaseCredentials
diff --git a/src/Model/ChaseCredentials.php b/src/Model/ChaseCredentials.php
index bdbc057f0..4b00de495 100644
--- a/src/Model/ChaseCredentials.php
+++ b/src/Model/ChaseCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChaseCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('partialAuth', $data)) {
$this->setPartialAuth($data['partialAuth']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/CheckInstrument.php b/src/Model/CheckInstrument.php
index ca5be27b4..43413279d 100644
--- a/src/Model/CheckInstrument.php
+++ b/src/Model/CheckInstrument.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CheckInstrument implements CustomerDefaultPaymentInstrument, TransactionPaymentInstrument
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('reference', $data)) {
$this->setReference($data['reference']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/CheckoutCom.php b/src/Model/CheckoutCom.php
index bca5da839..7b11fd0fa 100644
--- a/src/Model/CheckoutCom.php
+++ b/src/Model/CheckoutCom.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CheckoutCom extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'CheckoutCom',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CheckoutComCredentials
diff --git a/src/Model/CheckoutComCredentials.php b/src/Model/CheckoutComCredentials.php
index 8e459cfbc..2f0197255 100644
--- a/src/Model/CheckoutComCredentials.php
+++ b/src/Model/CheckoutComCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CheckoutComCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('signatureKey', $data)) {
$this->setSignatureKey($data['signatureKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSecretKey(): string
diff --git a/src/Model/CheckoutComSettings.php b/src/Model/CheckoutComSettings.php
index cf722fcfb..687f5fd22 100644
--- a/src/Model/CheckoutComSettings.php
+++ b/src/Model/CheckoutComSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CheckoutComSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('markAsWaitingGatewayOnPendingPayout', $data)) {
$this->setMarkAsWaitingGatewayOnPendingPayout($data['markAsWaitingGatewayOnPendingPayout']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('processingChannelId', $data)) {
$this->setProcessingChannelId($data['processingChannelId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMarkAsWaitingGatewayOnPendingPayout(): ?bool
diff --git a/src/Model/CheckoutForm.php b/src/Model/CheckoutForm.php
index f527a9a4b..796c8d017 100644
--- a/src/Model/CheckoutForm.php
+++ b/src/Model/CheckoutForm.php
@@ -17,18 +17,11 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CheckoutForm implements JsonSerializable
{
- public const PAYMENT_METHODS_PAYMENT_CARD = 'payment-card';
-
- public const PAYMENT_METHODS_ACH = 'ach';
-
- public const PAYMENT_METHODS_CASH = 'cash';
-
- public const PAYMENT_METHODS_CHECK = 'check';
-
- public const PAYMENT_METHODS_PAYPAL = 'paypal';
+ use HasMetadata;
public const PAYMENT_METHODS_ADV_CASH = 'AdvCash';
@@ -378,6 +371,8 @@ class CheckoutForm implements JsonSerializable
public const PAYMENT_METHODS_VENUS_POINT = 'VenusPoint';
+ public const PAYMENT_METHODS_VIVA = 'Viva';
+
public const PAYMENT_METHODS_VOUCHER = 'voucher';
public const PAYMENT_METHODS_VOUCHER2 = 'voucher-2';
@@ -416,7 +411,7 @@ class CheckoutForm implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -466,11 +461,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/CheckoutFormCustomization.php b/src/Model/CheckoutFormCustomization.php
index bfcaf64dc..53ff3e5e7 100644
--- a/src/Model/CheckoutFormCustomization.php
+++ b/src/Model/CheckoutFormCustomization.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CheckoutFormCustomization implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('logoId', $data)) {
$this->setLogoId($data['logoId']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('requiredAdditionalFields', $data)) {
$this->setRequiredAdditionalFields($data['requiredAdditionalFields']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLogoId(): ?string
diff --git a/src/Model/CheckoutFormCustomizationColors.php b/src/Model/CheckoutFormCustomizationColors.php
index 2a67d175b..68af8c05a 100644
--- a/src/Model/CheckoutFormCustomizationColors.php
+++ b/src/Model/CheckoutFormCustomizationColors.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CheckoutFormCustomizationColors implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('primary', $data)) {
$this->setPrimary($data['primary']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('buttonText', $data)) {
$this->setButtonText($data['buttonText']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrimary(): ?string
diff --git a/src/Model/CheckoutFormCustomizationLinks.php b/src/Model/CheckoutFormCustomizationLinks.php
index 10f28aa96..d59264cf2 100644
--- a/src/Model/CheckoutFormCustomizationLinks.php
+++ b/src/Model/CheckoutFormCustomizationLinks.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CheckoutFormCustomizationLinks implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('refundPolicy', $data)) {
$this->setRefundPolicy($data['refundPolicy']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('termsOfService', $data)) {
$this->setTermsOfService($data['termsOfService']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRefundPolicy(): ?string
diff --git a/src/Model/CheckoutFormCustomizationTracking.php b/src/Model/CheckoutFormCustomizationTracking.php
index c16acd476..662905df0 100644
--- a/src/Model/CheckoutFormCustomizationTracking.php
+++ b/src/Model/CheckoutFormCustomizationTracking.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CheckoutFormCustomizationTracking implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('googleAnalytics', $data)) {
$this->setGoogleAnalytics($data['googleAnalytics']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('heapIo', $data)) {
$this->setHeapIo($data['heapIo']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getGoogleAnalytics(): ?string
diff --git a/src/Model/CheckoutFormFixedPlan.php b/src/Model/CheckoutFormFixedPlan.php
index 01c2545c2..459f92c59 100644
--- a/src/Model/CheckoutFormFixedPlan.php
+++ b/src/Model/CheckoutFormFixedPlan.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CheckoutFormFixedPlan implements CheckoutFormPlan
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('planId', $data)) {
$this->setPlanId($data['planId']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CheckoutFormPlanFactory.php b/src/Model/CheckoutFormPlanFactory.php
index 738f4aa83..2da50979c 100644
--- a/src/Model/CheckoutFormPlanFactory.php
+++ b/src/Model/CheckoutFormPlanFactory.php
@@ -18,11 +18,11 @@
class CheckoutFormPlanFactory
{
- public static function from(array $data = []): CheckoutFormPlan
+ public static function from(array $data = [], array $metadata = []): CheckoutFormPlan
{
return match ($data['type']) {
- 'fixed' => CheckoutFormFixedPlan::from($data),
- 'variable' => CheckoutFormVariablePlan::from($data),
+ 'fixed' => CheckoutFormFixedPlan::from($data, $metadata),
+ 'variable' => CheckoutFormVariablePlan::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/CheckoutFormVariablePlan.php b/src/Model/CheckoutFormVariablePlan.php
index 0189ad92e..8481cac93 100644
--- a/src/Model/CheckoutFormVariablePlan.php
+++ b/src/Model/CheckoutFormVariablePlan.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CheckoutFormVariablePlan implements CheckoutFormPlan
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('planId', $data)) {
$this->setPlanId($data['planId']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('maximum', $data)) {
$this->setMaximum($data['maximum']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/Chillstock.php b/src/Model/Chillstock.php
index 0e0780eee..a6d213960 100644
--- a/src/Model/Chillstock.php
+++ b/src/Model/Chillstock.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Chillstock extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Chillstock',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ChillstockCredentials
diff --git a/src/Model/ChillstockCredentials.php b/src/Model/ChillstockCredentials.php
index 0c74858ca..ad7062ce1 100644
--- a/src/Model/ChillstockCredentials.php
+++ b/src/Model/ChillstockCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChillstockCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/ChillstockSettings.php b/src/Model/ChillstockSettings.php
index c0699d654..fc68cb61b 100644
--- a/src/Model/ChillstockSettings.php
+++ b/src/Model/ChillstockSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ChillstockSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sandbox', $data)) {
$this->setSandbox($data['sandbox']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSandbox(): ?bool
diff --git a/src/Model/Circle.php b/src/Model/Circle.php
index 08932af61..663803652 100644
--- a/src/Model/Circle.php
+++ b/src/Model/Circle.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Circle extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Circle',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CircleCredentials
diff --git a/src/Model/CircleCredentials.php b/src/Model/CircleCredentials.php
index e3d70ae92..5c9237bf9 100644
--- a/src/Model/CircleCredentials.php
+++ b/src/Model/CircleCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CircleCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/Citadel.php b/src/Model/Citadel.php
index 9bad5eabf..2fbdc6c5e 100644
--- a/src/Model/Citadel.php
+++ b/src/Model/Citadel.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Citadel extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Citadel',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CitadelCredentials
diff --git a/src/Model/CitadelCredentials.php b/src/Model/CitadelCredentials.php
index 404c33e16..1bb9337d8 100644
--- a/src/Model/CitadelCredentials.php
+++ b/src/Model/CitadelCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CitadelCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('storeName', $data)) {
$this->setStoreName($data['storeName']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStoreName(): string
diff --git a/src/Model/Clearhaus.php b/src/Model/Clearhaus.php
index 945cd5c45..931b7614d 100644
--- a/src/Model/Clearhaus.php
+++ b/src/Model/Clearhaus.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Clearhaus extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Clearhaus',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ClearhausCredentials
diff --git a/src/Model/ClearhausCredentials.php b/src/Model/ClearhausCredentials.php
index 885c059bd..eb8759754 100644
--- a/src/Model/ClearhausCredentials.php
+++ b/src/Model/ClearhausCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ClearhausCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/Cleo.php b/src/Model/Cleo.php
index 7616789f4..7a0deaaca 100644
--- a/src/Model/Cleo.php
+++ b/src/Model/Cleo.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Cleo extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Cleo',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CleoCredentials
diff --git a/src/Model/CleoCredentials.php b/src/Model/CleoCredentials.php
index 47221e8ca..c1c975cb2 100644
--- a/src/Model/CleoCredentials.php
+++ b/src/Model/CleoCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CleoCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accessToken', $data)) {
$this->setAccessToken($data['accessToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccessToken(): string
diff --git a/src/Model/CoinGate.php b/src/Model/CoinGate.php
index 11fa3fab2..894a0c7a9 100644
--- a/src/Model/CoinGate.php
+++ b/src/Model/CoinGate.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CoinGate extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'CoinGate',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CoinGateCredentials
diff --git a/src/Model/CoinGateCredentials.php b/src/Model/CoinGateCredentials.php
index f04c20865..ab9a1b646 100644
--- a/src/Model/CoinGateCredentials.php
+++ b/src/Model/CoinGateCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CoinGateCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('authToken', $data)) {
$this->setAuthToken($data['authToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAuthToken(): string
diff --git a/src/Model/CoinGateSettings.php b/src/Model/CoinGateSettings.php
index 4e96c29d5..6f03e1ea0 100644
--- a/src/Model/CoinGateSettings.php
+++ b/src/Model/CoinGateSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CoinGateSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('targetCurrency', $data)) {
$this->setTargetCurrency($data['targetCurrency']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('adjustAmount', $data)) {
$this->setAdjustAmount($data['adjustAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTargetCurrency(): ?string
diff --git a/src/Model/CoinPayments.php b/src/Model/CoinPayments.php
index ee2344727..a391472af 100644
--- a/src/Model/CoinPayments.php
+++ b/src/Model/CoinPayments.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CoinPayments extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'CoinPayments',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CoinPaymentsCredentials
diff --git a/src/Model/CoinPaymentsCredentials.php b/src/Model/CoinPaymentsCredentials.php
index 2fa5ba9d8..3d024af90 100644
--- a/src/Model/CoinPaymentsCredentials.php
+++ b/src/Model/CoinPaymentsCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CoinPaymentsCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('clientSecret', $data)) {
$this->setClientSecret($data['clientSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublicKey(): string
diff --git a/src/Model/CoinPaymentsSettings.php b/src/Model/CoinPaymentsSettings.php
index 63f092e5f..9d3bf0f13 100644
--- a/src/Model/CoinPaymentsSettings.php
+++ b/src/Model/CoinPaymentsSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CoinPaymentsSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('useCallbackAddress', $data)) {
$this->setUseCallbackAddress($data['useCallbackAddress']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiUrl', $data)) {
$this->setApiUrl($data['apiUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUseCallbackAddress(): ?bool
diff --git a/src/Model/Coinbase.php b/src/Model/Coinbase.php
index af8cdb553..14fa9c2a5 100644
--- a/src/Model/Coinbase.php
+++ b/src/Model/Coinbase.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Coinbase extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Coinbase',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CoinbaseCredentials
diff --git a/src/Model/CoinbaseCredentials.php b/src/Model/CoinbaseCredentials.php
index fa13b291b..c0554c9b3 100644
--- a/src/Model/CoinbaseCredentials.php
+++ b/src/Model/CoinbaseCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CoinbaseCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/CoinbaseSettings.php b/src/Model/CoinbaseSettings.php
index 321c005d8..6a2b429c3 100644
--- a/src/Model/CoinbaseSettings.php
+++ b/src/Model/CoinbaseSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CoinbaseSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('tolerancePercentage', $data)) {
$this->setTolerancePercentage($data['tolerancePercentage']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTolerancePercentage(): int
diff --git a/src/Model/Company.php b/src/Model/Company.php
index dc1c827ae..2aa6f119d 100644
--- a/src/Model/Company.php
+++ b/src/Model/Company.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Company implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/CompositeTokenFactory.php b/src/Model/CompositeTokenFactory.php
index 02027e187..03db90c78 100644
--- a/src/Model/CompositeTokenFactory.php
+++ b/src/Model/CompositeTokenFactory.php
@@ -18,155 +18,155 @@
class CompositeTokenFactory
{
- public static function from(array $data = []): CompositeToken
+ public static function from(array $data = [], array $metadata = []): CompositeToken
{
return match ($data['method']) {
- 'AdvCash' => AlternativePaymentToken::from($data),
- 'Alfa-click' => AlternativePaymentToken::from($data),
- 'Alipay' => AlternativePaymentToken::from($data),
- 'AstroPay Card' => AlternativePaymentToken::from($data),
- 'AstroPay-GO' => AlternativePaymentToken::from($data),
- 'Baloto' => AlternativePaymentToken::from($data),
- 'Bancontact' => AlternativePaymentToken::from($data),
- 'Bancontact-mobile' => AlternativePaymentToken::from($data),
- 'BankReferenced' => AlternativePaymentToken::from($data),
- 'Beeline' => AlternativePaymentToken::from($data),
- 'Belfius-direct-net' => AlternativePaymentToken::from($data),
- 'Bizum' => AlternativePaymentToken::from($data),
- 'Boleto' => AlternativePaymentToken::from($data),
- 'CASHlib' => AlternativePaymentToken::from($data),
- 'CODVoucher' => AlternativePaymentToken::from($data),
- 'CashToCode' => AlternativePaymentToken::from($data),
- 'China UnionPay' => AlternativePaymentToken::from($data),
- 'Cleo' => AlternativePaymentToken::from($data),
- 'Conekta-oxxo' => AlternativePaymentToken::from($data),
- 'Cupon-de-pagos' => AlternativePaymentToken::from($data),
- 'EPS' => AlternativePaymentToken::from($data),
- 'Efecty' => AlternativePaymentToken::from($data),
- 'FasterPay' => AlternativePaymentToken::from($data),
- 'Flexepin' => AlternativePaymentToken::from($data),
- 'Giropay' => AlternativePaymentToken::from($data),
- 'Google Pay' => AlternativePaymentToken::from($data),
- 'Gpaysafe' => AlternativePaymentToken::from($data),
- 'ING-homepay' => AlternativePaymentToken::from($data),
- 'INOVAPAY-pin' => AlternativePaymentToken::from($data),
- 'INOVAPAY-wallet' => AlternativePaymentToken::from($data),
- 'InstaDebit' => AlternativePaymentToken::from($data),
- 'InstantPayments' => AlternativePaymentToken::from($data),
- 'Interac' => AlternativePaymentToken::from($data),
- 'Interac-eTransfer' => AlternativePaymentToken::from($data),
- 'Interac-online' => AlternativePaymentToken::from($data),
- 'Jeton' => AlternativePaymentToken::from($data),
- 'KNOT' => AlternativePaymentToken::from($data),
- 'MTS' => AlternativePaymentToken::from($data),
- 'Matrix' => AlternativePaymentToken::from($data),
- 'MaxiCash' => AlternativePaymentToken::from($data),
- 'Megafon' => AlternativePaymentToken::from($data),
- 'MiFinity-eWallet' => AlternativePaymentToken::from($data),
- 'MuchBetter' => AlternativePaymentToken::from($data),
- 'Multibanco' => AlternativePaymentToken::from($data),
- 'Neosurf' => AlternativePaymentToken::from($data),
- 'Netbanking' => AlternativePaymentToken::from($data),
- 'Neteller' => AlternativePaymentToken::from($data),
- 'Nordea-Solo' => AlternativePaymentToken::from($data),
- 'OXXO' => AlternativePaymentToken::from($data),
- 'OchaPay' => AlternativePaymentToken::from($data),
- 'Onlineueberweisen' => AlternativePaymentToken::from($data),
- 'P24' => AlternativePaymentToken::from($data),
- 'POLi' => AlternativePaymentToken::from($data),
- 'Pagadito' => AlternativePaymentToken::from($data),
- 'PagoEffectivo' => AlternativePaymentToken::from($data),
- 'Pagsmile-deposit-express' => AlternativePaymentToken::from($data),
- 'Pagsmile-lottery' => AlternativePaymentToken::from($data),
- 'Pay4Fun' => AlternativePaymentToken::from($data),
- 'PayCash' => AlternativePaymentToken::from($data),
- 'PayTabs' => AlternativePaymentToken::from($data),
- 'Payeer' => AlternativePaymentToken::from($data),
- 'PaymentAsia-crypto' => AlternativePaymentToken::from($data),
- 'Paymero' => AlternativePaymentToken::from($data),
- 'Paynote' => AlternativePaymentToken::from($data),
- 'Paysafecard' => AlternativePaymentToken::from($data),
- 'Paysafecash' => AlternativePaymentToken::from($data),
- 'Perfect-money' => AlternativePaymentToken::from($data),
- 'PhonePe' => AlternativePaymentToken::from($data),
- 'Piastrix' => AlternativePaymentToken::from($data),
- 'PinPay' => AlternativePaymentToken::from($data),
- 'PostFinance-card' => AlternativePaymentToken::from($data),
- 'PostFinance-e-finance' => AlternativePaymentToken::from($data),
- 'QIWI' => AlternativePaymentToken::from($data),
- 'QPay' => AlternativePaymentToken::from($data),
- 'QQPay' => AlternativePaymentToken::from($data),
- 'Resurs' => AlternativePaymentToken::from($data),
- 'SEPA' => AlternativePaymentToken::from($data),
- 'SMSVoucher' => AlternativePaymentToken::from($data),
- 'SafetyPay' => AlternativePaymentToken::from($data),
- 'Skrill' => AlternativePaymentToken::from($data),
- 'Skrill Rapid Transfer' => AlternativePaymentToken::from($data),
- 'Sofort' => AlternativePaymentToken::from($data),
- 'SparkPay' => AlternativePaymentToken::from($data),
- 'Tele2' => AlternativePaymentToken::from($data),
- 'Terminaly-RF' => AlternativePaymentToken::from($data),
- 'ToditoCash-card' => AlternativePaymentToken::from($data),
- 'Trustly' => AlternativePaymentToken::from($data),
- 'UPI' => AlternativePaymentToken::from($data),
- 'UPayCard' => AlternativePaymentToken::from($data),
- 'USD-coin' => AlternativePaymentToken::from($data),
- 'VCreditos' => AlternativePaymentToken::from($data),
- 'VenusPoint' => AlternativePaymentToken::from($data),
- 'WeChat Pay' => AlternativePaymentToken::from($data),
- 'Webmoney' => AlternativePaymentToken::from($data),
- 'Webpay' => AlternativePaymentToken::from($data),
- 'Webpay Card' => AlternativePaymentToken::from($data),
- 'Webpay-2' => AlternativePaymentToken::from($data),
- 'XPay-P2P' => AlternativePaymentToken::from($data),
- 'XPay-QR' => AlternativePaymentToken::from($data),
- 'Yandex-money' => AlternativePaymentToken::from($data),
- 'Zimpler' => AlternativePaymentToken::from($data),
- 'Zotapay' => AlternativePaymentToken::from($data),
- 'bank-transfer' => AlternativePaymentToken::from($data),
- 'bank-transfer-2' => AlternativePaymentToken::from($data),
- 'bank-transfer-3' => AlternativePaymentToken::from($data),
- 'bank-transfer-4' => AlternativePaymentToken::from($data),
- 'bank-transfer-5' => AlternativePaymentToken::from($data),
- 'bank-transfer-6' => AlternativePaymentToken::from($data),
- 'bank-transfer-7' => AlternativePaymentToken::from($data),
- 'bank-transfer-8' => AlternativePaymentToken::from($data),
- 'bank-transfer-9' => AlternativePaymentToken::from($data),
- 'bitcoin' => AlternativePaymentToken::from($data),
- 'cash' => AlternativePaymentToken::from($data),
- 'cash-deposit' => AlternativePaymentToken::from($data),
- 'check' => AlternativePaymentToken::from($data),
- 'cryptocurrency' => AlternativePaymentToken::from($data),
- 'domestic-cards' => AlternativePaymentToken::from($data),
- 'ePay.bg' => AlternativePaymentToken::from($data),
- 'eZeeWallet' => AlternativePaymentToken::from($data),
- 'ecoPayz' => AlternativePaymentToken::from($data),
- 'ecoVoucher' => AlternativePaymentToken::from($data),
- 'iDEAL' => AlternativePaymentToken::from($data),
- 'iDebit' => AlternativePaymentToken::from($data),
- 'iWallet' => AlternativePaymentToken::from($data),
- 'instant-bank-transfer' => AlternativePaymentToken::from($data),
- 'invoice' => AlternativePaymentToken::from($data),
- 'jpay' => AlternativePaymentToken::from($data),
- 'loonie' => AlternativePaymentToken::from($data),
- 'miscellaneous' => AlternativePaymentToken::from($data),
- 'online-bank-transfer' => AlternativePaymentToken::from($data),
- 'oriental-wallet' => AlternativePaymentToken::from($data),
- 'phone' => AlternativePaymentToken::from($data),
- 'rapyd-checkout' => AlternativePaymentToken::from($data),
- 'swift-dbt' => AlternativePaymentToken::from($data),
- 'voucher' => AlternativePaymentToken::from($data),
- 'voucher-2' => AlternativePaymentToken::from($data),
- 'voucher-3' => AlternativePaymentToken::from($data),
- 'voucher-4' => AlternativePaymentToken::from($data),
- 'ach' => BankAccountToken::from($data),
- 'echeck' => BankAccountToken::from($data),
- 'digital-wallet' => DigitalWalletToken::from($data),
- 'Khelocard' => KhelocardCardToken::from($data),
- 'Klarna' => KlarnaToken::from($data),
- 'payment-card' => PaymentCardToken::from($data),
- 'paypal' => PayPalToken::from($data),
- 'plaid-account' => PlaidAccountToken::from($data),
+ 'AdvCash' => AlternativePaymentToken::from($data, $metadata),
+ 'Alfa-click' => AlternativePaymentToken::from($data, $metadata),
+ 'Alipay' => AlternativePaymentToken::from($data, $metadata),
+ 'AstroPay Card' => AlternativePaymentToken::from($data, $metadata),
+ 'AstroPay-GO' => AlternativePaymentToken::from($data, $metadata),
+ 'Baloto' => AlternativePaymentToken::from($data, $metadata),
+ 'Bancontact' => AlternativePaymentToken::from($data, $metadata),
+ 'Bancontact-mobile' => AlternativePaymentToken::from($data, $metadata),
+ 'BankReferenced' => AlternativePaymentToken::from($data, $metadata),
+ 'Beeline' => AlternativePaymentToken::from($data, $metadata),
+ 'Belfius-direct-net' => AlternativePaymentToken::from($data, $metadata),
+ 'Bizum' => AlternativePaymentToken::from($data, $metadata),
+ 'Boleto' => AlternativePaymentToken::from($data, $metadata),
+ 'CASHlib' => AlternativePaymentToken::from($data, $metadata),
+ 'CODVoucher' => AlternativePaymentToken::from($data, $metadata),
+ 'CashToCode' => AlternativePaymentToken::from($data, $metadata),
+ 'China UnionPay' => AlternativePaymentToken::from($data, $metadata),
+ 'Cleo' => AlternativePaymentToken::from($data, $metadata),
+ 'Conekta-oxxo' => AlternativePaymentToken::from($data, $metadata),
+ 'Cupon-de-pagos' => AlternativePaymentToken::from($data, $metadata),
+ 'EPS' => AlternativePaymentToken::from($data, $metadata),
+ 'Efecty' => AlternativePaymentToken::from($data, $metadata),
+ 'FasterPay' => AlternativePaymentToken::from($data, $metadata),
+ 'Flexepin' => AlternativePaymentToken::from($data, $metadata),
+ 'Giropay' => AlternativePaymentToken::from($data, $metadata),
+ 'Google Pay' => AlternativePaymentToken::from($data, $metadata),
+ 'Gpaysafe' => AlternativePaymentToken::from($data, $metadata),
+ 'ING-homepay' => AlternativePaymentToken::from($data, $metadata),
+ 'INOVAPAY-pin' => AlternativePaymentToken::from($data, $metadata),
+ 'INOVAPAY-wallet' => AlternativePaymentToken::from($data, $metadata),
+ 'InstaDebit' => AlternativePaymentToken::from($data, $metadata),
+ 'InstantPayments' => AlternativePaymentToken::from($data, $metadata),
+ 'Interac' => AlternativePaymentToken::from($data, $metadata),
+ 'Interac-eTransfer' => AlternativePaymentToken::from($data, $metadata),
+ 'Interac-online' => AlternativePaymentToken::from($data, $metadata),
+ 'Jeton' => AlternativePaymentToken::from($data, $metadata),
+ 'KNOT' => AlternativePaymentToken::from($data, $metadata),
+ 'MTS' => AlternativePaymentToken::from($data, $metadata),
+ 'Matrix' => AlternativePaymentToken::from($data, $metadata),
+ 'MaxiCash' => AlternativePaymentToken::from($data, $metadata),
+ 'Megafon' => AlternativePaymentToken::from($data, $metadata),
+ 'MiFinity-eWallet' => AlternativePaymentToken::from($data, $metadata),
+ 'MuchBetter' => AlternativePaymentToken::from($data, $metadata),
+ 'Multibanco' => AlternativePaymentToken::from($data, $metadata),
+ 'Neosurf' => AlternativePaymentToken::from($data, $metadata),
+ 'Netbanking' => AlternativePaymentToken::from($data, $metadata),
+ 'Neteller' => AlternativePaymentToken::from($data, $metadata),
+ 'Nordea-Solo' => AlternativePaymentToken::from($data, $metadata),
+ 'OXXO' => AlternativePaymentToken::from($data, $metadata),
+ 'OchaPay' => AlternativePaymentToken::from($data, $metadata),
+ 'Onlineueberweisen' => AlternativePaymentToken::from($data, $metadata),
+ 'P24' => AlternativePaymentToken::from($data, $metadata),
+ 'POLi' => AlternativePaymentToken::from($data, $metadata),
+ 'Pagadito' => AlternativePaymentToken::from($data, $metadata),
+ 'PagoEffectivo' => AlternativePaymentToken::from($data, $metadata),
+ 'Pagsmile-deposit-express' => AlternativePaymentToken::from($data, $metadata),
+ 'Pagsmile-lottery' => AlternativePaymentToken::from($data, $metadata),
+ 'Pay4Fun' => AlternativePaymentToken::from($data, $metadata),
+ 'PayCash' => AlternativePaymentToken::from($data, $metadata),
+ 'PayTabs' => AlternativePaymentToken::from($data, $metadata),
+ 'Payeer' => AlternativePaymentToken::from($data, $metadata),
+ 'PaymentAsia-crypto' => AlternativePaymentToken::from($data, $metadata),
+ 'Paymero' => AlternativePaymentToken::from($data, $metadata),
+ 'Paynote' => AlternativePaymentToken::from($data, $metadata),
+ 'Paysafecard' => AlternativePaymentToken::from($data, $metadata),
+ 'Paysafecash' => AlternativePaymentToken::from($data, $metadata),
+ 'Perfect-money' => AlternativePaymentToken::from($data, $metadata),
+ 'PhonePe' => AlternativePaymentToken::from($data, $metadata),
+ 'Piastrix' => AlternativePaymentToken::from($data, $metadata),
+ 'PinPay' => AlternativePaymentToken::from($data, $metadata),
+ 'PostFinance-card' => AlternativePaymentToken::from($data, $metadata),
+ 'PostFinance-e-finance' => AlternativePaymentToken::from($data, $metadata),
+ 'QIWI' => AlternativePaymentToken::from($data, $metadata),
+ 'QPay' => AlternativePaymentToken::from($data, $metadata),
+ 'QQPay' => AlternativePaymentToken::from($data, $metadata),
+ 'Resurs' => AlternativePaymentToken::from($data, $metadata),
+ 'SEPA' => AlternativePaymentToken::from($data, $metadata),
+ 'SMSVoucher' => AlternativePaymentToken::from($data, $metadata),
+ 'SafetyPay' => AlternativePaymentToken::from($data, $metadata),
+ 'Skrill' => AlternativePaymentToken::from($data, $metadata),
+ 'Skrill Rapid Transfer' => AlternativePaymentToken::from($data, $metadata),
+ 'Sofort' => AlternativePaymentToken::from($data, $metadata),
+ 'SparkPay' => AlternativePaymentToken::from($data, $metadata),
+ 'Tele2' => AlternativePaymentToken::from($data, $metadata),
+ 'Terminaly-RF' => AlternativePaymentToken::from($data, $metadata),
+ 'ToditoCash-card' => AlternativePaymentToken::from($data, $metadata),
+ 'Trustly' => AlternativePaymentToken::from($data, $metadata),
+ 'UPI' => AlternativePaymentToken::from($data, $metadata),
+ 'UPayCard' => AlternativePaymentToken::from($data, $metadata),
+ 'USD-coin' => AlternativePaymentToken::from($data, $metadata),
+ 'VCreditos' => AlternativePaymentToken::from($data, $metadata),
+ 'VenusPoint' => AlternativePaymentToken::from($data, $metadata),
+ 'WeChat Pay' => AlternativePaymentToken::from($data, $metadata),
+ 'Webmoney' => AlternativePaymentToken::from($data, $metadata),
+ 'Webpay' => AlternativePaymentToken::from($data, $metadata),
+ 'Webpay Card' => AlternativePaymentToken::from($data, $metadata),
+ 'Webpay-2' => AlternativePaymentToken::from($data, $metadata),
+ 'XPay-P2P' => AlternativePaymentToken::from($data, $metadata),
+ 'XPay-QR' => AlternativePaymentToken::from($data, $metadata),
+ 'Yandex-money' => AlternativePaymentToken::from($data, $metadata),
+ 'Zimpler' => AlternativePaymentToken::from($data, $metadata),
+ 'Zotapay' => AlternativePaymentToken::from($data, $metadata),
+ 'bank-transfer' => AlternativePaymentToken::from($data, $metadata),
+ 'bank-transfer-2' => AlternativePaymentToken::from($data, $metadata),
+ 'bank-transfer-3' => AlternativePaymentToken::from($data, $metadata),
+ 'bank-transfer-4' => AlternativePaymentToken::from($data, $metadata),
+ 'bank-transfer-5' => AlternativePaymentToken::from($data, $metadata),
+ 'bank-transfer-6' => AlternativePaymentToken::from($data, $metadata),
+ 'bank-transfer-7' => AlternativePaymentToken::from($data, $metadata),
+ 'bank-transfer-8' => AlternativePaymentToken::from($data, $metadata),
+ 'bank-transfer-9' => AlternativePaymentToken::from($data, $metadata),
+ 'bitcoin' => AlternativePaymentToken::from($data, $metadata),
+ 'cash' => AlternativePaymentToken::from($data, $metadata),
+ 'cash-deposit' => AlternativePaymentToken::from($data, $metadata),
+ 'check' => AlternativePaymentToken::from($data, $metadata),
+ 'domestic-cards' => AlternativePaymentToken::from($data, $metadata),
+ 'ePay.bg' => AlternativePaymentToken::from($data, $metadata),
+ 'eZeeWallet' => AlternativePaymentToken::from($data, $metadata),
+ 'ecoPayz' => AlternativePaymentToken::from($data, $metadata),
+ 'ecoVoucher' => AlternativePaymentToken::from($data, $metadata),
+ 'iDEAL' => AlternativePaymentToken::from($data, $metadata),
+ 'iDebit' => AlternativePaymentToken::from($data, $metadata),
+ 'iWallet' => AlternativePaymentToken::from($data, $metadata),
+ 'instant-bank-transfer' => AlternativePaymentToken::from($data, $metadata),
+ 'invoice' => AlternativePaymentToken::from($data, $metadata),
+ 'jpay' => AlternativePaymentToken::from($data, $metadata),
+ 'loonie' => AlternativePaymentToken::from($data, $metadata),
+ 'miscellaneous' => AlternativePaymentToken::from($data, $metadata),
+ 'online-bank-transfer' => AlternativePaymentToken::from($data, $metadata),
+ 'oriental-wallet' => AlternativePaymentToken::from($data, $metadata),
+ 'phone' => AlternativePaymentToken::from($data, $metadata),
+ 'rapyd-checkout' => AlternativePaymentToken::from($data, $metadata),
+ 'swift-dbt' => AlternativePaymentToken::from($data, $metadata),
+ 'voucher' => AlternativePaymentToken::from($data, $metadata),
+ 'voucher-2' => AlternativePaymentToken::from($data, $metadata),
+ 'voucher-3' => AlternativePaymentToken::from($data, $metadata),
+ 'voucher-4' => AlternativePaymentToken::from($data, $metadata),
+ 'ach' => BankAccountToken::from($data, $metadata),
+ 'echeck' => BankAccountToken::from($data, $metadata),
+ 'cryptocurrency' => CryptocurrencyToken::from($data, $metadata),
+ 'digital-wallet' => DigitalWalletToken::from($data, $metadata),
+ 'Khelocard' => KhelocardCardToken::from($data, $metadata),
+ 'Klarna' => KlarnaToken::from($data, $metadata),
+ 'payment-card' => PaymentCardToken::from($data, $metadata),
+ 'paypal' => PayPalToken::from($data, $metadata),
+ 'plaid-account' => PlaidAccountToken::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/Conekta.php b/src/Model/Conekta.php
index 919bd7a1a..f57d98659 100644
--- a/src/Model/Conekta.php
+++ b/src/Model/Conekta.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Conekta extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Conekta',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ConektaCredentials
diff --git a/src/Model/ConektaCredentials.php b/src/Model/ConektaCredentials.php
index 279d6ee63..51413d383 100644
--- a/src/Model/ConektaCredentials.php
+++ b/src/Model/ConektaCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ConektaCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/ConektaSettings.php b/src/Model/ConektaSettings.php
index 377990b40..344891082 100644
--- a/src/Model/ConektaSettings.php
+++ b/src/Model/ConektaSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ConektaSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('baseUrl', $data)) {
$this->setBaseUrl($data['baseUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBaseUrl(): ?string
diff --git a/src/Model/ConfigurablePlan.php b/src/Model/ConfigurablePlan.php
index 24e25bc71..662fd1365 100644
--- a/src/Model/ConfigurablePlan.php
+++ b/src/Model/ConfigurablePlan.php
@@ -18,5 +18,5 @@
interface ConfigurablePlan extends JsonSerializable
{
- public function getId(): ?string;
+ public function getId(): string;
}
diff --git a/src/Model/ConfigurablePlanFactory.php b/src/Model/ConfigurablePlanFactory.php
index 68ebd870f..2252b182d 100644
--- a/src/Model/ConfigurablePlanFactory.php
+++ b/src/Model/ConfigurablePlanFactory.php
@@ -16,12 +16,12 @@
class ConfigurablePlanFactory
{
- public static function from(array $data = []): ConfigurablePlan
+ public static function from(array $data = [], array $metadata = []): ConfigurablePlan
{
if (count($data) === 1 && isset($data['id'])) {
- return OriginalPlan::from($data);
+ return OriginalPlan::from($data, $metadata);
}
- return FlexiblePlanFactory::from($data);
+ return FlexiblePlanFactory::from($data, $metadata);
}
}
diff --git a/src/Model/ContactEmails.php b/src/Model/ContactEmails.php
index 4af3a954a..1f321bf45 100644
--- a/src/Model/ContactEmails.php
+++ b/src/Model/ContactEmails.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ContactEmails implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('label', $data)) {
$this->setLabel($data['label']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('primary', $data)) {
$this->setPrimary($data['primary']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLabel(): string
diff --git a/src/Model/ContactObject.php b/src/Model/ContactObject.php
index 50296af6f..866d5f0f7 100644
--- a/src/Model/ContactObject.php
+++ b/src/Model/ContactObject.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ContactObject implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('firstName', $data)) {
$this->setFirstName($data['firstName']);
@@ -65,11 +68,12 @@ public function __construct(array $data = [])
if (array_key_exists('hash', $data)) {
$this->setHash($data['hash']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFirstName(): ?string
diff --git a/src/Model/ContactPhoneNumbers.php b/src/Model/ContactPhoneNumbers.php
index f62d2b1c8..2b7f9cd41 100644
--- a/src/Model/ContactPhoneNumbers.php
+++ b/src/Model/ContactPhoneNumbers.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ContactPhoneNumbers implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('label', $data)) {
$this->setLabel($data['label']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('primary', $data)) {
$this->setPrimary($data['primary']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLabel(): string
diff --git a/src/Model/Coppr.php b/src/Model/Coppr.php
index 546244715..3aaf94882 100644
--- a/src/Model/Coppr.php
+++ b/src/Model/Coppr.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Coppr extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Coppr',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CopprCredentials
diff --git a/src/Model/CopprCredentials.php b/src/Model/CopprCredentials.php
index eb47e9635..a7536acf5 100644
--- a/src/Model/CopprCredentials.php
+++ b/src/Model/CopprCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CopprCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('organizationId', $data)) {
$this->setOrganizationId($data['organizationId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getOrganizationId(): string
diff --git a/src/Model/CopprSettings.php b/src/Model/CopprSettings.php
index 08edc08c3..ca28959cc 100644
--- a/src/Model/CopprSettings.php
+++ b/src/Model/CopprSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CopprSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('rebillyPublishableKey', $data)) {
$this->setRebillyPublishableKey($data['rebillyPublishableKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRebillyPublishableKey(): ?string
diff --git a/src/Model/CountriesMetadataFactory.php b/src/Model/CountriesMetadataFactory.php
index 49d5da586..965f3d2c8 100644
--- a/src/Model/CountriesMetadataFactory.php
+++ b/src/Model/CountriesMetadataFactory.php
@@ -18,12 +18,12 @@
class CountriesMetadataFactory
{
- public static function from(array $data = []): CountriesMetadata
+ public static function from(array $data = [], array $metadata = []): CountriesMetadata
{
return match ($data['mode']) {
- 'subset' => CountriesSubsetMetadata::from($data),
- 'all' => CountriesUnrestrictedMetadata::from($data),
- 'unknown' => CountriesUnrestrictedMetadata::from($data),
+ 'subset' => CountriesSubsetMetadata::from($data, $metadata),
+ 'all' => CountriesUnrestrictedMetadata::from($data, $metadata),
+ 'unknown' => CountriesUnrestrictedMetadata::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/CountriesSubsetMetadata.php b/src/Model/CountriesSubsetMetadata.php
index 36a75c3f6..87496e083 100644
--- a/src/Model/CountriesSubsetMetadata.php
+++ b/src/Model/CountriesSubsetMetadata.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CountriesSubsetMetadata implements CountriesMetadata
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('values', $data)) {
$this->setValues($data['values']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMode(): string
diff --git a/src/Model/CountriesUnrestrictedMetadata.php b/src/Model/CountriesUnrestrictedMetadata.php
index 75b839e24..9b9584810 100644
--- a/src/Model/CountriesUnrestrictedMetadata.php
+++ b/src/Model/CountriesUnrestrictedMetadata.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CountriesUnrestrictedMetadata implements CountriesMetadata
{
+ use HasMetadata;
+
public const MODE_UNKNOWN = 'unknown';
public const MODE_ALL = 'all';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('mode', $data)) {
$this->setMode($data['mode']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('values', $data)) {
$this->setValues($data['values']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMode(): string
diff --git a/src/Model/Coupon.php b/src/Model/Coupon.php
index 49a3868ec..3f59cf0d3 100644
--- a/src/Model/Coupon.php
+++ b/src/Model/Coupon.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Coupon implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_DRAFT = 'draft';
public const STATUS_ISSUED = 'issued';
@@ -28,7 +31,7 @@ class Coupon implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -66,11 +69,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/CouponExpiration.php b/src/Model/CouponExpiration.php
index 2cd32996d..b0b39aef8 100644
--- a/src/Model/CouponExpiration.php
+++ b/src/Model/CouponExpiration.php
@@ -17,21 +17,25 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CouponExpiration implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('expiredTime', $data)) {
$this->setExpiredTime($data['expiredTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getExpiredTime(): DateTimeImmutable
diff --git a/src/Model/CouponRedemption.php b/src/Model/CouponRedemption.php
index 67fff08c1..867ed9b3f 100644
--- a/src/Model/CouponRedemption.php
+++ b/src/Model/CouponRedemption.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CouponRedemption implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -48,11 +51,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/CouponRestrictionDiscountPerRedemption.php b/src/Model/CouponRestrictionDiscountPerRedemption.php
index a42b5e2f2..91db03c71 100644
--- a/src/Model/CouponRestrictionDiscountPerRedemption.php
+++ b/src/Model/CouponRestrictionDiscountPerRedemption.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionDiscountPerRedemption implements RedemptionRestriction, CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionExclusiveApplication.php b/src/Model/CouponRestrictionExclusiveApplication.php
index f3eb7c335..368ba271b 100644
--- a/src/Model/CouponRestrictionExclusiveApplication.php
+++ b/src/Model/CouponRestrictionExclusiveApplication.php
@@ -14,15 +14,20 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionExclusiveApplication implements CouponRestriction
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionFactory.php b/src/Model/CouponRestrictionFactory.php
index 8665f8729..e0ba00f16 100644
--- a/src/Model/CouponRestrictionFactory.php
+++ b/src/Model/CouponRestrictionFactory.php
@@ -18,23 +18,24 @@
class CouponRestrictionFactory
{
- public static function from(array $data = []): CouponRestriction
+ public static function from(array $data = [], array $metadata = []): CouponRestriction
{
return match ($data['type']) {
- 'discounts-per-redemption' => CouponRestrictionDiscountPerRedemption::from($data),
- 'restrict-to-exclusive-application' => CouponRestrictionExclusiveApplication::from($data),
- 'minimum-order-amount' => CouponRestrictionMinimumOrderAmount::from($data),
- 'paid-by-time' => CouponRestrictionPaidByTime::from($data),
- 'redemptions-per-customer' => CouponRestrictionRedemptionsPerCustomer::from($data),
- 'restrict-to-bxgy' => CouponRestrictionRestrictToBxgy::from($data),
- 'restrict-to-countries' => CouponRestrictionRestrictToCountries::from($data),
- 'restrict-to-customers' => CouponRestrictionRestrictToCustomers::from($data),
- 'restrict-to-customer-tags' => CouponRestrictionRestrictToCustomerTags::from($data),
- 'restrict-to-invoices' => CouponRestrictionRestrictToInvoices::from($data),
- 'restrict-to-plans' => CouponRestrictionRestrictToPlans::from($data),
- 'restrict-to-products' => CouponRestrictionRestrictToProducts::from($data),
- 'restrict-to-subscriptions' => CouponRestrictionRestrictToSubscriptions::from($data),
- 'total-redemptions' => CouponRestrictionTotalRedemptions::from($data),
+ 'discounts-per-redemption' => CouponRestrictionDiscountPerRedemption::from($data, $metadata),
+ 'restrict-to-exclusive-application' => CouponRestrictionExclusiveApplication::from($data, $metadata),
+ 'maximum-order-amount' => CouponRestrictionMaximumOrderAmount::from($data, $metadata),
+ 'minimum-order-amount' => CouponRestrictionMinimumOrderAmount::from($data, $metadata),
+ 'paid-by-time' => CouponRestrictionPaidByTime::from($data, $metadata),
+ 'redemptions-per-customer' => CouponRestrictionRedemptionsPerCustomer::from($data, $metadata),
+ 'restrict-to-bxgy' => CouponRestrictionRestrictToBxgy::from($data, $metadata),
+ 'restrict-to-countries' => CouponRestrictionRestrictToCountries::from($data, $metadata),
+ 'restrict-to-customers' => CouponRestrictionRestrictToCustomers::from($data, $metadata),
+ 'restrict-to-customer-tags' => CouponRestrictionRestrictToCustomerTags::from($data, $metadata),
+ 'restrict-to-invoices' => CouponRestrictionRestrictToInvoices::from($data, $metadata),
+ 'restrict-to-plans' => CouponRestrictionRestrictToPlans::from($data, $metadata),
+ 'restrict-to-products' => CouponRestrictionRestrictToProducts::from($data, $metadata),
+ 'restrict-to-subscriptions' => CouponRestrictionRestrictToSubscriptions::from($data, $metadata),
+ 'total-redemptions' => CouponRestrictionTotalRedemptions::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/CouponRestrictionMaximumOrderAmount.php b/src/Model/CouponRestrictionMaximumOrderAmount.php
new file mode 100644
index 000000000..81d196a94
--- /dev/null
+++ b/src/Model/CouponRestrictionMaximumOrderAmount.php
@@ -0,0 +1,88 @@
+setAmount($data['amount']);
+ }
+ if (array_key_exists('currency', $data)) {
+ $this->setCurrency($data['currency']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getType(): string
+ {
+ return 'maximum-order-amount';
+ }
+
+ public function getAmount(): float
+ {
+ return $this->fields['amount'];
+ }
+
+ public function setAmount(float|string $amount): static
+ {
+ if (is_string($amount)) {
+ $amount = (float) $amount;
+ }
+
+ $this->fields['amount'] = $amount;
+
+ return $this;
+ }
+
+ public function getCurrency(): string
+ {
+ return $this->fields['currency'];
+ }
+
+ public function setCurrency(string $currency): static
+ {
+ $this->fields['currency'] = $currency;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [
+ 'type' => 'maximum-order-amount',
+ ];
+ if (array_key_exists('amount', $this->fields)) {
+ $data['amount'] = $this->fields['amount'];
+ }
+ if (array_key_exists('currency', $this->fields)) {
+ $data['currency'] = $this->fields['currency'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/CouponRestrictionMinimumOrderAmount.php b/src/Model/CouponRestrictionMinimumOrderAmount.php
index 4be0a1146..0d7beb0d0 100644
--- a/src/Model/CouponRestrictionMinimumOrderAmount.php
+++ b/src/Model/CouponRestrictionMinimumOrderAmount.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionMinimumOrderAmount implements RedemptionRestriction, CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionPaidByTime.php b/src/Model/CouponRestrictionPaidByTime.php
index b3cf4b20c..6c1c68f2b 100644
--- a/src/Model/CouponRestrictionPaidByTime.php
+++ b/src/Model/CouponRestrictionPaidByTime.php
@@ -16,21 +16,25 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class CouponRestrictionPaidByTime implements RedemptionRestriction, CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('time', $data)) {
$this->setTime($data['time']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionRedemptionsPerCustomer.php b/src/Model/CouponRestrictionRedemptionsPerCustomer.php
index c4b00a77b..20cc2d29d 100644
--- a/src/Model/CouponRestrictionRedemptionsPerCustomer.php
+++ b/src/Model/CouponRestrictionRedemptionsPerCustomer.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionRedemptionsPerCustomer implements CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionRestrictToBxgy.php b/src/Model/CouponRestrictionRestrictToBxgy.php
index da55d6894..d0bb2b53d 100644
--- a/src/Model/CouponRestrictionRestrictToBxgy.php
+++ b/src/Model/CouponRestrictionRestrictToBxgy.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionRestrictToBxgy implements CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('buy', $data)) {
$this->setBuy($data['buy']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('get', $data)) {
$this->setGet($data['get']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionRestrictToBxgyBuy.php b/src/Model/CouponRestrictionRestrictToBxgyBuy.php
index c02fcf34a..aa0cc43fd 100644
--- a/src/Model/CouponRestrictionRestrictToBxgyBuy.php
+++ b/src/Model/CouponRestrictionRestrictToBxgyBuy.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CouponRestrictionRestrictToBxgyBuy implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('planId', $data)) {
$this->setPlanId($data['planId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPlanId(): string
diff --git a/src/Model/CouponRestrictionRestrictToBxgyGet.php b/src/Model/CouponRestrictionRestrictToBxgyGet.php
index 223d96958..5fe966368 100644
--- a/src/Model/CouponRestrictionRestrictToBxgyGet.php
+++ b/src/Model/CouponRestrictionRestrictToBxgyGet.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CouponRestrictionRestrictToBxgyGet implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('planId', $data)) {
$this->setPlanId($data['planId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPlanId(): string
diff --git a/src/Model/CouponRestrictionRestrictToCountries.php b/src/Model/CouponRestrictionRestrictToCountries.php
index fc9d16c25..a3b306d60 100644
--- a/src/Model/CouponRestrictionRestrictToCountries.php
+++ b/src/Model/CouponRestrictionRestrictToCountries.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionRestrictToCountries implements CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('countries', $data)) {
$this->setCountries($data['countries']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionRestrictToCustomerTags.php b/src/Model/CouponRestrictionRestrictToCustomerTags.php
index 533e2dbe7..5c7ab8cda 100644
--- a/src/Model/CouponRestrictionRestrictToCustomerTags.php
+++ b/src/Model/CouponRestrictionRestrictToCustomerTags.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionRestrictToCustomerTags implements CouponRestriction
{
+ use HasMetadata;
+
public const REQUIRE_ALL_TAGS_TRUE = 'true';
public const REQUIRE_ALL_TAGS_FALSE = 'false';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('tags', $data)) {
$this->setTags($data['tags']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('requireAllTags', $data)) {
$this->setRequireAllTags($data['requireAllTags']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionRestrictToCustomers.php b/src/Model/CouponRestrictionRestrictToCustomers.php
index bd84ba896..f3469ff7c 100644
--- a/src/Model/CouponRestrictionRestrictToCustomers.php
+++ b/src/Model/CouponRestrictionRestrictToCustomers.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionRestrictToCustomers implements CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customerIds', $data)) {
$this->setCustomerIds($data['customerIds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionRestrictToInvoices.php b/src/Model/CouponRestrictionRestrictToInvoices.php
index d0d53b4c7..d773ee00d 100644
--- a/src/Model/CouponRestrictionRestrictToInvoices.php
+++ b/src/Model/CouponRestrictionRestrictToInvoices.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionRestrictToInvoices implements RedemptionRestriction, CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('invoiceIds', $data)) {
$this->setInvoiceIds($data['invoiceIds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionRestrictToPlans.php b/src/Model/CouponRestrictionRestrictToPlans.php
index 7b072712b..97854c3c2 100644
--- a/src/Model/CouponRestrictionRestrictToPlans.php
+++ b/src/Model/CouponRestrictionRestrictToPlans.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionRestrictToPlans implements RedemptionRestriction, CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('planIds', $data)) {
$this->setPlanIds($data['planIds']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('minimumQuantity', $data)) {
$this->setMinimumQuantity($data['minimumQuantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionRestrictToProducts.php b/src/Model/CouponRestrictionRestrictToProducts.php
index 9c840bb80..5b6aedf08 100644
--- a/src/Model/CouponRestrictionRestrictToProducts.php
+++ b/src/Model/CouponRestrictionRestrictToProducts.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionRestrictToProducts implements RedemptionRestriction, CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('productIds', $data)) {
$this->setProductIds($data['productIds']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('minimumQuantity', $data)) {
$this->setMinimumQuantity($data['minimumQuantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionRestrictToSubscriptions.php b/src/Model/CouponRestrictionRestrictToSubscriptions.php
index 085f4a614..fd05fe2c2 100644
--- a/src/Model/CouponRestrictionRestrictToSubscriptions.php
+++ b/src/Model/CouponRestrictionRestrictToSubscriptions.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionRestrictToSubscriptions implements RedemptionRestriction, CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('subscriptionIds', $data)) {
$this->setSubscriptionIds($data['subscriptionIds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CouponRestrictionTotalRedemptions.php b/src/Model/CouponRestrictionTotalRedemptions.php
index c822455ae..0e1f7052c 100644
--- a/src/Model/CouponRestrictionTotalRedemptions.php
+++ b/src/Model/CouponRestrictionTotalRedemptions.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CouponRestrictionTotalRedemptions implements CouponRestriction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CreationQuote.php b/src/Model/CreationQuote.php
index 5b24620f8..3107f5fbc 100644
--- a/src/Model/CreationQuote.php
+++ b/src/Model/CreationQuote.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreationQuote implements Quote
{
+ use HasMetadata;
+
public const ACCEPTANCE_CONDITIONS_CUSTOMER = 'customer';
public const ACCEPTANCE_CONDITIONS_PAYMENT = 'payment';
@@ -37,7 +40,7 @@ class CreationQuote implements Quote
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -108,11 +111,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/CreationQuoteAcceptanceFulfillment.php b/src/Model/CreationQuoteAcceptanceFulfillment.php
index b9ac25600..c46711ed4 100644
--- a/src/Model/CreationQuoteAcceptanceFulfillment.php
+++ b/src/Model/CreationQuoteAcceptanceFulfillment.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreationQuoteAcceptanceFulfillment implements JsonSerializable
{
+ use HasMetadata;
+
public const CONDITION_CUSTOMER = 'customer';
public const CONDITION_PAYMENT = 'payment';
@@ -26,7 +29,7 @@ class CreationQuoteAcceptanceFulfillment implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('condition', $data)) {
$this->setCondition($data['condition']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('isFulfilled', $data)) {
$this->setIsFulfilled($data['isFulfilled']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCondition(): ?string
diff --git a/src/Model/CreationQuoteEmbedded.php b/src/Model/CreationQuoteEmbedded.php
index a58d19668..7c17c9960 100644
--- a/src/Model/CreationQuoteEmbedded.php
+++ b/src/Model/CreationQuoteEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreationQuoteEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('invoice', $data)) {
$this->setInvoice($data['invoice']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/CreationQuoteInvoicePreview.php b/src/Model/CreationQuoteInvoicePreview.php
index 2e98f20f3..d57b6dd0e 100644
--- a/src/Model/CreationQuoteInvoicePreview.php
+++ b/src/Model/CreationQuoteInvoicePreview.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreationQuoteInvoicePreview implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('items', $data)) {
$this->setItems($data['items']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCurrency(): ?string
diff --git a/src/Model/CreationQuoteInvoicePreviewInitialAmounts.php b/src/Model/CreationQuoteInvoicePreviewInitialAmounts.php
index 26d86201d..40bd53c19 100644
--- a/src/Model/CreationQuoteInvoicePreviewInitialAmounts.php
+++ b/src/Model/CreationQuoteInvoicePreviewInitialAmounts.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreationQuoteInvoicePreviewInitialAmounts implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('taxAmount', $data)) {
$this->setTaxAmount($data['taxAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/CreationQuoteInvoicePreviewItems.php b/src/Model/CreationQuoteInvoicePreviewItems.php
index c615c388a..8fbb5c595 100644
--- a/src/Model/CreationQuoteInvoicePreviewItems.php
+++ b/src/Model/CreationQuoteInvoicePreviewItems.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreationQuoteInvoicePreviewItems implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_DEBIT = 'debit';
public const TYPE_CREDIT = 'credit';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quoteItemId', $data)) {
$this->setQuoteItemId($data['quoteItemId']);
@@ -68,11 +71,12 @@ public function __construct(array $data = [])
if (array_key_exists('trialTaxAmount', $data)) {
$this->setTrialTaxAmount($data['trialTaxAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getQuoteItemId(): ?string
diff --git a/src/Model/CreationQuoteInvoicePreviewRecurringAmounts.php b/src/Model/CreationQuoteInvoicePreviewRecurringAmounts.php
index 29287ab42..c2f4866df 100644
--- a/src/Model/CreationQuoteInvoicePreviewRecurringAmounts.php
+++ b/src/Model/CreationQuoteInvoicePreviewRecurringAmounts.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreationQuoteInvoicePreviewRecurringAmounts implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('taxAmount', $data)) {
$this->setTaxAmount($data['taxAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/CreationQuoteOrder.php b/src/Model/CreationQuoteOrder.php
index ac071c246..5e2a21a27 100644
--- a/src/Model/CreationQuoteOrder.php
+++ b/src/Model/CreationQuoteOrder.php
@@ -14,13 +14,18 @@
namespace Rebilly\Sdk\Model;
+use DateTimeImmutable;
+use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreationQuoteOrder implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -40,11 +45,18 @@ public function __construct(array $data = [])
if (array_key_exists('billingAddress', $data)) {
$this->setBillingAddress($data['billingAddress']);
}
+ if (array_key_exists('startTime', $data)) {
+ $this->setStartTime($data['startTime']);
+ }
+ if (array_key_exists('isLegacy', $data)) {
+ $this->setIsLegacy($data['isLegacy']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
@@ -135,6 +147,34 @@ public function setBillingAddress(null|ContactObject|array $billingAddress): sta
return $this;
}
+ public function getStartTime(): ?DateTimeImmutable
+ {
+ return $this->fields['startTime'] ?? null;
+ }
+
+ public function setStartTime(null|DateTimeImmutable|string $startTime): static
+ {
+ if ($startTime !== null && !($startTime instanceof DateTimeImmutable)) {
+ $startTime = new DateTimeImmutable($startTime);
+ }
+
+ $this->fields['startTime'] = $startTime;
+
+ return $this;
+ }
+
+ public function getIsLegacy(): ?bool
+ {
+ return $this->fields['isLegacy'] ?? null;
+ }
+
+ public function setIsLegacy(null|bool $isLegacy): static
+ {
+ $this->fields['isLegacy'] = $isLegacy;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
@@ -159,6 +199,12 @@ public function jsonSerialize(): array
if (array_key_exists('billingAddress', $this->fields)) {
$data['billingAddress'] = $this->fields['billingAddress']?->jsonSerialize();
}
+ if (array_key_exists('startTime', $this->fields)) {
+ $data['startTime'] = $this->fields['startTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('isLegacy', $this->fields)) {
+ $data['isLegacy'] = $this->fields['isLegacy'];
+ }
return $data;
}
diff --git a/src/Model/CreationQuoteSignature.php b/src/Model/CreationQuoteSignature.php
index 84a3e9f6d..6d89063f8 100644
--- a/src/Model/CreationQuoteSignature.php
+++ b/src/Model/CreationQuoteSignature.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreationQuoteSignature implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('showWrittenSignatureLines', $data)) {
$this->setShowWrittenSignatureLines($data['showWrittenSignatureLines']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('organizationPrintedName', $data)) {
$this->setOrganizationPrintedName($data['organizationPrintedName']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getShowWrittenSignatureLines(): ?bool
diff --git a/src/Model/CreditFileCommonDecisionData.php b/src/Model/CreditFileCommonDecisionData.php
index 88805b697..9ababbf5b 100644
--- a/src/Model/CreditFileCommonDecisionData.php
+++ b/src/Model/CreditFileCommonDecisionData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditFileCommonDecisionData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('lastNameMatch', $data)) {
$this->setLastNameMatch($data['lastNameMatch']);
@@ -58,11 +61,12 @@ public function __construct(array $data = [])
if (array_key_exists('dateOfBirthAsReported', $data)) {
$this->setDateOfBirthAsReported($data['dateOfBirthAsReported']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLastNameMatch(): ?string
diff --git a/src/Model/CreditFileMatches.php b/src/Model/CreditFileMatches.php
index 79d13dae6..abd75ea20 100644
--- a/src/Model/CreditFileMatches.php
+++ b/src/Model/CreditFileMatches.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditFileMatches implements JsonSerializable
{
+ use HasMetadata;
+
public const CREDIT_BUREAU_EQUIFAX = 'equifax';
public const CREDIT_BUREAU_EXPERIAN = 'experian';
@@ -36,7 +39,7 @@ class CreditFileMatches implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('creditBureau', $data)) {
$this->setCreditBureau($data['creditBureau']);
@@ -59,11 +62,12 @@ public function __construct(array $data = [])
if (array_key_exists('referenceData', $data)) {
$this->setReferenceData($data['referenceData']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCreditBureau(): ?string
diff --git a/src/Model/CreditFileMatchesReferenceData.php b/src/Model/CreditFileMatchesReferenceData.php
index e26e77f7d..f3604adf4 100644
--- a/src/Model/CreditFileMatchesReferenceData.php
+++ b/src/Model/CreditFileMatchesReferenceData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditFileMatchesReferenceData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('singleSourceHit', $data)) {
$this->setSingleSourceHit($data['singleSourceHit']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('dualDecision', $data)) {
$this->setDualDecision($data['dualDecision']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSingleSourceHit(): ?string
diff --git a/src/Model/CreditFileMatchesTrades.php b/src/Model/CreditFileMatchesTrades.php
index ea5f87e83..b7c1e4a41 100644
--- a/src/Model/CreditFileMatchesTrades.php
+++ b/src/Model/CreditFileMatchesTrades.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditFileMatchesTrades implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -32,11 +35,12 @@ public function __construct(array $data = [])
if (array_key_exists('dateOpened', $data)) {
$this->setDateOpened($data['dateOpened']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/CreditMemo.php b/src/Model/CreditMemo.php
index b6096e842..7e687359e 100644
--- a/src/Model/CreditMemo.php
+++ b/src/Model/CreditMemo.php
@@ -17,11 +17,16 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditMemo implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_DRAFT = 'draft';
+ public const STATUS_QUOTATION = 'quotation';
+
public const STATUS_ISSUED = 'issued';
public const STATUS_APPLIED = 'applied';
@@ -50,7 +55,7 @@ class CreditMemo implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -109,11 +114,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/CreditMemoAllocations.php b/src/Model/CreditMemoAllocations.php
index 9f965df15..ff9459d8a 100644
--- a/src/Model/CreditMemoAllocations.php
+++ b/src/Model/CreditMemoAllocations.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditMemoAllocations implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactions', $data)) {
$this->setTransactions($data['transactions']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('invoices', $data)) {
$this->setInvoices($data['invoices']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/CreditMemoAllocationsTransactions.php b/src/Model/CreditMemoAllocationsTransactions.php
index 4a73e798a..c91dc7795 100644
--- a/src/Model/CreditMemoAllocationsTransactions.php
+++ b/src/Model/CreditMemoAllocationsTransactions.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditMemoAllocationsTransactions implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactionId', $data)) {
$this->setTransactionId($data['transactionId']);
@@ -39,11 +42,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTransactionId(): ?string
diff --git a/src/Model/CreditMemoEmbedded.php b/src/Model/CreditMemoEmbedded.php
index 8961d0ab3..75ed7fdd7 100644
--- a/src/Model/CreditMemoEmbedded.php
+++ b/src/Model/CreditMemoEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditMemoEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/CreditMemoInvoiceAllocation.php b/src/Model/CreditMemoInvoiceAllocation.php
index aec035fb1..98a3dce3e 100644
--- a/src/Model/CreditMemoInvoiceAllocation.php
+++ b/src/Model/CreditMemoInvoiceAllocation.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditMemoInvoiceAllocation implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('invoiceId', $data)) {
$this->setInvoiceId($data['invoiceId']);
@@ -39,11 +42,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getInvoiceId(): ?string
diff --git a/src/Model/CreditMemoItems.php b/src/Model/CreditMemoItems.php
index 8036be239..d7e2edcb4 100644
--- a/src/Model/CreditMemoItems.php
+++ b/src/Model/CreditMemoItems.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditMemoItems implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('tax', $data)) {
$this->setTax($data['tax']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/CreditMemoTaxItem.php b/src/Model/CreditMemoTaxItem.php
index d560c65b9..3b4fd7044 100644
--- a/src/Model/CreditMemoTaxItem.php
+++ b/src/Model/CreditMemoTaxItem.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditMemoTaxItem implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -58,11 +61,12 @@ public function __construct(array $data = [])
if (array_key_exists('jurisdictions', $data)) {
$this->setJurisdictions($data['jurisdictions']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): float
diff --git a/src/Model/CreditMemoTaxItemJurisdictions.php b/src/Model/CreditMemoTaxItemJurisdictions.php
index 342304226..61f88b7ee 100644
--- a/src/Model/CreditMemoTaxItemJurisdictions.php
+++ b/src/Model/CreditMemoTaxItemJurisdictions.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditMemoTaxItemJurisdictions implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('country', $data)) {
$this->setCountry($data['country']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('city', $data)) {
$this->setCity($data['city']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCountry(): ?string
diff --git a/src/Model/CreditMemoTimeline.php b/src/Model/CreditMemoTimeline.php
index ef596ff2a..e39ca51f9 100644
--- a/src/Model/CreditMemoTimeline.php
+++ b/src/Model/CreditMemoTimeline.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CreditMemoTimeline implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_CREATED = 'credit-memo-created';
public const TYPE_APPLIED = 'credit-memo-applied';
@@ -36,7 +39,7 @@ class CreditMemoTimeline implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -59,11 +62,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/Credorax.php b/src/Model/Credorax.php
index d38570cda..e3cfd200a 100644
--- a/src/Model/Credorax.php
+++ b/src/Model/Credorax.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Credorax extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Credorax',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CredoraxCredentials
diff --git a/src/Model/CredoraxCredentials.php b/src/Model/CredoraxCredentials.php
index 015080cd2..89b47dafe 100644
--- a/src/Model/CredoraxCredentials.php
+++ b/src/Model/CredoraxCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CredoraxCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantMd5Signature', $data)) {
$this->setMerchantMd5Signature($data['merchantMd5Signature']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/CryptocurrencyToken.php b/src/Model/CryptocurrencyToken.php
new file mode 100644
index 000000000..80010514d
--- /dev/null
+++ b/src/Model/CryptocurrencyToken.php
@@ -0,0 +1,310 @@
+setWalletName($data['walletName']);
+ }
+ if (array_key_exists('walletAddress', $data)) {
+ $this->setWalletAddress($data['walletAddress']);
+ }
+ if (array_key_exists('billingAddress', $data)) {
+ $this->setBillingAddress($data['billingAddress']);
+ }
+ if (array_key_exists('id', $data)) {
+ $this->setId($data['id']);
+ }
+ if (array_key_exists('isUsed', $data)) {
+ $this->setIsUsed($data['isUsed']);
+ }
+ if (array_key_exists('riskMetadata', $data)) {
+ $this->setRiskMetadata($data['riskMetadata']);
+ }
+ if (array_key_exists('leadSource', $data)) {
+ $this->setLeadSource($data['leadSource']);
+ }
+ if (array_key_exists('createdTime', $data)) {
+ $this->setCreatedTime($data['createdTime']);
+ }
+ if (array_key_exists('updatedTime', $data)) {
+ $this->setUpdatedTime($data['updatedTime']);
+ }
+ if (array_key_exists('usageTime', $data)) {
+ $this->setUsageTime($data['usageTime']);
+ }
+ if (array_key_exists('expirationTime', $data)) {
+ $this->setExpirationTime($data['expirationTime']);
+ }
+ if (array_key_exists('_links', $data)) {
+ $this->setLinks($data['_links']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getMethod(): string
+ {
+ return 'cryptocurrency';
+ }
+
+ public function getWalletName(): ?string
+ {
+ return $this->fields['walletName'] ?? null;
+ }
+
+ public function setWalletName(null|string $walletName): static
+ {
+ $this->fields['walletName'] = $walletName;
+
+ return $this;
+ }
+
+ public function getWalletAddress(): ?string
+ {
+ return $this->fields['walletAddress'] ?? null;
+ }
+
+ public function setWalletAddress(null|string $walletAddress): static
+ {
+ $this->fields['walletAddress'] = $walletAddress;
+
+ return $this;
+ }
+
+ public function getBillingAddress(): ?ContactObject
+ {
+ return $this->fields['billingAddress'] ?? null;
+ }
+
+ public function setBillingAddress(null|ContactObject|array $billingAddress): static
+ {
+ if ($billingAddress !== null && !($billingAddress instanceof ContactObject)) {
+ $billingAddress = ContactObject::from($billingAddress);
+ }
+
+ $this->fields['billingAddress'] = $billingAddress;
+
+ return $this;
+ }
+
+ public function getId(): ?string
+ {
+ return $this->fields['id'] ?? null;
+ }
+
+ public function getIsUsed(): ?bool
+ {
+ return $this->fields['isUsed'] ?? null;
+ }
+
+ public function getRiskMetadata(): ?RiskMetadata
+ {
+ return $this->fields['riskMetadata'] ?? null;
+ }
+
+ public function setRiskMetadata(null|RiskMetadata|array $riskMetadata): static
+ {
+ if ($riskMetadata !== null && !($riskMetadata instanceof RiskMetadata)) {
+ $riskMetadata = RiskMetadata::from($riskMetadata);
+ }
+
+ $this->fields['riskMetadata'] = $riskMetadata;
+
+ return $this;
+ }
+
+ public function getLeadSource(): ?LeadSource
+ {
+ return $this->fields['leadSource'] ?? null;
+ }
+
+ public function setLeadSource(null|LeadSource|array $leadSource): static
+ {
+ if ($leadSource !== null && !($leadSource instanceof LeadSource)) {
+ $leadSource = LeadSource::from($leadSource);
+ }
+
+ $this->fields['leadSource'] = $leadSource;
+
+ return $this;
+ }
+
+ public function getCreatedTime(): ?DateTimeImmutable
+ {
+ return $this->fields['createdTime'] ?? null;
+ }
+
+ public function getUpdatedTime(): ?DateTimeImmutable
+ {
+ return $this->fields['updatedTime'] ?? null;
+ }
+
+ public function getUsageTime(): ?DateTimeImmutable
+ {
+ return $this->fields['usageTime'] ?? null;
+ }
+
+ public function getExpirationTime(): ?DateTimeImmutable
+ {
+ return $this->fields['expirationTime'] ?? null;
+ }
+
+ /**
+ * @return null|ResourceLink[]
+ */
+ public function getLinks(): ?array
+ {
+ return $this->fields['_links'] ?? null;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [
+ 'method' => 'cryptocurrency',
+ ];
+ if (array_key_exists('walletName', $this->fields)) {
+ $data['walletName'] = $this->fields['walletName'];
+ }
+ if (array_key_exists('walletAddress', $this->fields)) {
+ $data['walletAddress'] = $this->fields['walletAddress'];
+ }
+ if (array_key_exists('billingAddress', $this->fields)) {
+ $data['billingAddress'] = $this->fields['billingAddress']?->jsonSerialize();
+ }
+ if (array_key_exists('id', $this->fields)) {
+ $data['id'] = $this->fields['id'];
+ }
+ if (array_key_exists('isUsed', $this->fields)) {
+ $data['isUsed'] = $this->fields['isUsed'];
+ }
+ if (array_key_exists('riskMetadata', $this->fields)) {
+ $data['riskMetadata'] = $this->fields['riskMetadata']?->jsonSerialize();
+ }
+ if (array_key_exists('leadSource', $this->fields)) {
+ $data['leadSource'] = $this->fields['leadSource']?->jsonSerialize();
+ }
+ if (array_key_exists('createdTime', $this->fields)) {
+ $data['createdTime'] = $this->fields['createdTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('updatedTime', $this->fields)) {
+ $data['updatedTime'] = $this->fields['updatedTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('usageTime', $this->fields)) {
+ $data['usageTime'] = $this->fields['usageTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('expirationTime', $this->fields)) {
+ $data['expirationTime'] = $this->fields['expirationTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('_links', $this->fields)) {
+ $data['_links'] = $this->fields['_links'] !== null
+ ? array_map(
+ static fn (ResourceLink $resourceLink) => $resourceLink->jsonSerialize(),
+ $this->fields['_links'],
+ )
+ : null;
+ }
+
+ return $data;
+ }
+
+ private function setId(null|string $id): static
+ {
+ $this->fields['id'] = $id;
+
+ return $this;
+ }
+
+ private function setIsUsed(null|bool $isUsed): static
+ {
+ $this->fields['isUsed'] = $isUsed;
+
+ return $this;
+ }
+
+ private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
+ {
+ if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
+ $createdTime = new DateTimeImmutable($createdTime);
+ }
+
+ $this->fields['createdTime'] = $createdTime;
+
+ return $this;
+ }
+
+ private function setUpdatedTime(null|DateTimeImmutable|string $updatedTime): static
+ {
+ if ($updatedTime !== null && !($updatedTime instanceof DateTimeImmutable)) {
+ $updatedTime = new DateTimeImmutable($updatedTime);
+ }
+
+ $this->fields['updatedTime'] = $updatedTime;
+
+ return $this;
+ }
+
+ private function setUsageTime(null|DateTimeImmutable|string $usageTime): static
+ {
+ if ($usageTime !== null && !($usageTime instanceof DateTimeImmutable)) {
+ $usageTime = new DateTimeImmutable($usageTime);
+ }
+
+ $this->fields['usageTime'] = $usageTime;
+
+ return $this;
+ }
+
+ private function setExpirationTime(null|DateTimeImmutable|string $expirationTime): static
+ {
+ if ($expirationTime !== null && !($expirationTime instanceof DateTimeImmutable)) {
+ $expirationTime = new DateTimeImmutable($expirationTime);
+ }
+
+ $this->fields['expirationTime'] = $expirationTime;
+
+ return $this;
+ }
+
+ /**
+ * @param null|array[]|ResourceLink[] $links
+ */
+ private function setLinks(null|array $links): static
+ {
+ $links = $links !== null ? array_map(
+ fn ($value) => $value instanceof ResourceLink ? $value : ResourceLink::from($value),
+ $links,
+ ) : null;
+
+ $this->fields['_links'] = $links;
+
+ return $this;
+ }
+}
diff --git a/src/Model/Cryptomus.php b/src/Model/Cryptomus.php
index b89ead166..76f682baa 100644
--- a/src/Model/Cryptomus.php
+++ b/src/Model/Cryptomus.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Cryptomus extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Cryptomus',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CryptomusCredentials
diff --git a/src/Model/CryptomusCredentials.php b/src/Model/CryptomusCredentials.php
index 05dbb6f54..082b77d7f 100644
--- a/src/Model/CryptomusCredentials.php
+++ b/src/Model/CryptomusCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CryptomusCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/CryptomusSettings.php b/src/Model/CryptomusSettings.php
index 97e465200..2b1d3d67f 100644
--- a/src/Model/CryptomusSettings.php
+++ b/src/Model/CryptomusSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CryptomusSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('refundAddress', $data)) {
$this->setRefundAddress($data['refundAddress']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRefundAddress(): ?string
diff --git a/src/Model/Cryptonator.php b/src/Model/Cryptonator.php
index 06c17d83a..259d4bbe2 100644
--- a/src/Model/Cryptonator.php
+++ b/src/Model/Cryptonator.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Cryptonator extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Cryptonator',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CryptonatorCredentials
diff --git a/src/Model/CryptonatorCredentials.php b/src/Model/CryptonatorCredentials.php
index 34999854a..19ed2af80 100644
--- a/src/Model/CryptonatorCredentials.php
+++ b/src/Model/CryptonatorCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CryptonatorCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchant_id', $data)) {
$this->setMerchantId($data['merchant_id']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secret', $data)) {
$this->setSecret($data['secret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/CumulativeSubscriptions.php b/src/Model/CumulativeSubscriptions.php
index a08e0ce0e..e9e9a5480 100644
--- a/src/Model/CumulativeSubscriptions.php
+++ b/src/Model/CumulativeSubscriptions.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CumulativeSubscriptions implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/CumulativeSubscriptionsData.php b/src/Model/CumulativeSubscriptionsData.php
index 71140df96..6127003d3 100644
--- a/src/Model/CumulativeSubscriptionsData.php
+++ b/src/Model/CumulativeSubscriptionsData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CumulativeSubscriptionsData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationValue', $data)) {
$this->setAggregationValue($data['aggregationValue']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('cumulativeCount', $data)) {
$this->setCumulativeCount($data['cumulativeCount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationValue(): ?string
diff --git a/src/Model/CurrenciesSubsetMetadata.php b/src/Model/CurrenciesSubsetMetadata.php
index dba3700b7..911bb7aa7 100644
--- a/src/Model/CurrenciesSubsetMetadata.php
+++ b/src/Model/CurrenciesSubsetMetadata.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CurrenciesSubsetMetadata implements PaymentMethodMetadataSupportedCurrencies
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('values', $data)) {
$this->setValues($data['values']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMode(): string
diff --git a/src/Model/CurrenciesUnrestrictedMetadata.php b/src/Model/CurrenciesUnrestrictedMetadata.php
index bea738c5a..7b907026b 100644
--- a/src/Model/CurrenciesUnrestrictedMetadata.php
+++ b/src/Model/CurrenciesUnrestrictedMetadata.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CurrenciesUnrestrictedMetadata implements PaymentMethodMetadataSupportedCurrencies
{
+ use HasMetadata;
+
public const MODE_UNKNOWN = 'unknown';
public const MODE_ALL = 'all';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('mode', $data)) {
$this->setMode($data['mode']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('values', $data)) {
$this->setValues($data['values']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMode(): string
diff --git a/src/Model/CustomDomain.php b/src/Model/CustomDomain.php
index c200f6b71..7036f8573 100644
--- a/src/Model/CustomDomain.php
+++ b/src/Model/CustomDomain.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomDomain implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -42,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/CustomFieldFactory.php b/src/Model/CustomFieldFactory.php
index 11fc32af8..1041f805c 100644
--- a/src/Model/CustomFieldFactory.php
+++ b/src/Model/CustomFieldFactory.php
@@ -18,17 +18,17 @@
class CustomFieldFactory
{
- public static function from(array $data = []): CustomField
+ public static function from(array $data = [], array $metadata = []): CustomField
{
return match ($data['type']) {
- 'array' => ArrayCustomField::from($data),
- 'boolean' => BooleanCustomField::from($data),
- 'date' => DateCustomField::from($data),
- 'datetime' => DateTimeCustomField::from($data),
- 'integer' => IntegerCustomField::from($data),
- 'monetary' => MonetaryCustomField::from($data),
- 'number' => NumberCustomField::from($data),
- 'string' => StringCustomField::from($data),
+ 'array' => ArrayCustomField::from($data, $metadata),
+ 'boolean' => BooleanCustomField::from($data, $metadata),
+ 'date' => DateCustomField::from($data, $metadata),
+ 'datetime' => DateTimeCustomField::from($data, $metadata),
+ 'integer' => IntegerCustomField::from($data, $metadata),
+ 'monetary' => MonetaryCustomField::from($data, $metadata),
+ 'number' => NumberCustomField::from($data, $metadata),
+ 'string' => StringCustomField::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/Customer.php b/src/Model/Customer.php
index d07193553..e41f29f82 100644
--- a/src/Model/Customer.php
+++ b/src/Model/Customer.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Customer implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -105,17 +108,21 @@ public function __construct(array $data = [])
if (array_key_exists('personId', $data)) {
$this->setPersonId($data['personId']);
}
+ if (array_key_exists('notificationEmails', $data)) {
+ $this->setNotificationEmails($data['notificationEmails']);
+ }
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
@@ -389,6 +396,24 @@ public function setPersonId(null|string $personId): static
return $this;
}
+ /**
+ * @return null|string[]
+ */
+ public function getNotificationEmails(): ?array
+ {
+ return $this->fields['notificationEmails'] ?? null;
+ }
+
+ /**
+ * @param null|string[] $notificationEmails
+ */
+ public function setNotificationEmails(null|array $notificationEmails): static
+ {
+ $this->fields['notificationEmails'] = $notificationEmails;
+
+ return $this;
+ }
+
/**
* @return null|ResourceLink[]
*/
@@ -507,6 +532,9 @@ public function jsonSerialize(): array
if (array_key_exists('personId', $this->fields)) {
$data['personId'] = $this->fields['personId'];
}
+ if (array_key_exists('notificationEmails', $this->fields)) {
+ $data['notificationEmails'] = $this->fields['notificationEmails'];
+ }
if (array_key_exists('_links', $this->fields)) {
$data['_links'] = $this->fields['_links'] !== null
? array_map(
diff --git a/src/Model/CustomerAverageValue.php b/src/Model/CustomerAverageValue.php
index e8a2719d4..0a373d6ad 100644
--- a/src/Model/CustomerAverageValue.php
+++ b/src/Model/CustomerAverageValue.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomerAverageValue implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('amountUsd', $data)) {
$this->setAmountUsd($data['amountUsd']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCurrency(): ?string
diff --git a/src/Model/CustomerCredential.php b/src/Model/CustomerCredential.php
index 9d26993f0..2fbf681da 100644
--- a/src/Model/CustomerCredential.php
+++ b/src/Model/CustomerCredential.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomerCredential implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -42,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/CustomerDefaultPaymentInstrumentFactory.php b/src/Model/CustomerDefaultPaymentInstrumentFactory.php
index 93b8a3aad..548119fb2 100644
--- a/src/Model/CustomerDefaultPaymentInstrumentFactory.php
+++ b/src/Model/CustomerDefaultPaymentInstrumentFactory.php
@@ -18,208 +18,206 @@
class CustomerDefaultPaymentInstrumentFactory
{
- public static function from(array $data = []): CustomerDefaultPaymentInstrument
+ public static function from(array $data = [], array $metadata = []): CustomerDefaultPaymentInstrument
{
if (isset($data['paymentInstrumentId'])) {
- return VaultedInstrument::from($data);
+ return VaultedInstrument::from($data, $metadata);
}
return match ($data['method']) {
- 'AdvCash' => AlternativePaymentInstrument::from($data),
- 'Aera' => AlternativePaymentInstrument::from($data),
- 'Affirm' => AlternativePaymentInstrument::from($data),
- 'Afterpay' => AlternativePaymentInstrument::from($data),
- 'Aircash' => AlternativePaymentInstrument::from($data),
- 'Airpay' => AlternativePaymentInstrument::from($data),
- 'Alfa-click' => AlternativePaymentInstrument::from($data),
- 'Alipay' => AlternativePaymentInstrument::from($data),
- 'AmazonPay' => AlternativePaymentInstrument::from($data),
- 'Apple Pay' => AlternativePaymentInstrument::from($data),
- 'AstroPay Card' => AlternativePaymentInstrument::from($data),
- 'AstroPay-GO' => AlternativePaymentInstrument::from($data),
- 'Baloto' => AlternativePaymentInstrument::from($data),
- 'Bancontact' => AlternativePaymentInstrument::from($data),
- 'Bancontact-mobile' => AlternativePaymentInstrument::from($data),
- 'BankReferenced' => AlternativePaymentInstrument::from($data),
- 'BankSEND' => AlternativePaymentInstrument::from($data),
- 'Beeline' => AlternativePaymentInstrument::from($data),
- 'Belfius-direct-net' => AlternativePaymentInstrument::from($data),
- 'Bizum' => AlternativePaymentInstrument::from($data),
- 'Blik' => AlternativePaymentInstrument::from($data),
- 'Boleto' => AlternativePaymentInstrument::from($data),
- 'Boleto-2' => AlternativePaymentInstrument::from($data),
- 'Boleto-3' => AlternativePaymentInstrument::from($data),
- 'CASHlib' => AlternativePaymentInstrument::from($data),
- 'CCAvenue' => AlternativePaymentInstrument::from($data),
- 'CODVoucher' => AlternativePaymentInstrument::from($data),
- 'CashToCode' => AlternativePaymentInstrument::from($data),
- 'China UnionPay' => AlternativePaymentInstrument::from($data),
- 'Clearpay' => AlternativePaymentInstrument::from($data),
- 'Cleo' => AlternativePaymentInstrument::from($data),
- 'Conekta-oxxo' => AlternativePaymentInstrument::from($data),
- 'Conekta-spei' => AlternativePaymentInstrument::from($data),
- 'Cupon-de-pagos' => AlternativePaymentInstrument::from($data),
- 'CyberSource' => AlternativePaymentInstrument::from($data),
- 'Dimoco-pay-smart' => AlternativePaymentInstrument::from($data),
- 'Directa24Card' => AlternativePaymentInstrument::from($data),
- 'EPS' => AlternativePaymentInstrument::from($data),
- 'Efecty' => AlternativePaymentInstrument::from($data),
- 'Ethereum' => AlternativePaymentInstrument::from($data),
- 'FasterPay' => AlternativePaymentInstrument::from($data),
- 'Flexepin' => AlternativePaymentInstrument::from($data),
- 'Giropay' => AlternativePaymentInstrument::from($data),
- 'Google Pay' => AlternativePaymentInstrument::from($data),
- 'Gpaysafe' => AlternativePaymentInstrument::from($data),
- 'ING-homepay' => AlternativePaymentInstrument::from($data),
- 'INOVAPAY-pin' => AlternativePaymentInstrument::from($data),
- 'INOVAPAY-wallet' => AlternativePaymentInstrument::from($data),
- 'InstaDebit' => AlternativePaymentInstrument::from($data),
- 'InstantPayments' => AlternativePaymentInstrument::from($data),
- 'Interac' => AlternativePaymentInstrument::from($data),
- 'Interac-eTransfer' => AlternativePaymentInstrument::from($data),
- 'Interac-express-connect' => AlternativePaymentInstrument::from($data),
- 'Interac-online' => AlternativePaymentInstrument::from($data),
- 'Jeton' => AlternativePaymentInstrument::from($data),
- 'JetonCash' => AlternativePaymentInstrument::from($data),
- 'KNOT' => AlternativePaymentInstrument::from($data),
- 'KakaoPay' => AlternativePaymentInstrument::from($data),
- 'Khelocard' => AlternativePaymentInstrument::from($data),
- 'Klarna' => AlternativePaymentInstrument::from($data),
- 'LPG-online' => AlternativePaymentInstrument::from($data),
- 'LPG-payment-card' => AlternativePaymentInstrument::from($data),
- 'Litecoin' => AlternativePaymentInstrument::from($data),
- 'MTS' => AlternativePaymentInstrument::from($data),
- 'Matrix' => AlternativePaymentInstrument::from($data),
- 'MaxiCash' => AlternativePaymentInstrument::from($data),
- 'Megafon' => AlternativePaymentInstrument::from($data),
- 'MercadoPago' => AlternativePaymentInstrument::from($data),
- 'MiFinity-eWallet' => AlternativePaymentInstrument::from($data),
- 'MobilePay' => AlternativePaymentInstrument::from($data),
- 'MuchBetter' => AlternativePaymentInstrument::from($data),
- 'MuchBetterVoucher' => AlternativePaymentInstrument::from($data),
- 'Multibanco' => AlternativePaymentInstrument::from($data),
- 'MyFatoorah' => AlternativePaymentInstrument::from($data),
- 'Neosurf' => AlternativePaymentInstrument::from($data),
- 'Netbanking' => AlternativePaymentInstrument::from($data),
- 'Neteller' => AlternativePaymentInstrument::from($data),
- 'Nordea-Solo' => AlternativePaymentInstrument::from($data),
- 'NordikCoin' => AlternativePaymentInstrument::from($data),
- 'OXXO' => AlternativePaymentInstrument::from($data),
- 'OchaPay' => AlternativePaymentInstrument::from($data),
- 'Onlineueberweisen' => AlternativePaymentInstrument::from($data),
- 'P24' => AlternativePaymentInstrument::from($data),
- 'PIX' => AlternativePaymentInstrument::from($data),
- 'POLi' => AlternativePaymentInstrument::from($data),
- 'Pagadito' => AlternativePaymentInstrument::from($data),
- 'PagoEffectivo' => AlternativePaymentInstrument::from($data),
- 'Pagsmile-deposit-express' => AlternativePaymentInstrument::from($data),
- 'Pagsmile-lottery' => AlternativePaymentInstrument::from($data),
- 'Pay4Fun' => AlternativePaymentInstrument::from($data),
- 'PayCash' => AlternativePaymentInstrument::from($data),
- 'PayTabs' => AlternativePaymentInstrument::from($data),
- 'PayU' => AlternativePaymentInstrument::from($data),
- 'PayULatam' => AlternativePaymentInstrument::from($data),
- 'Payco' => AlternativePaymentInstrument::from($data),
- 'Payeer' => AlternativePaymentInstrument::from($data),
- 'PaymentAsia-crypto' => AlternativePaymentInstrument::from($data),
- 'Paymero' => AlternativePaymentInstrument::from($data),
- 'Paymero-QR' => AlternativePaymentInstrument::from($data),
- 'Paynote' => AlternativePaymentInstrument::from($data),
- 'Paysafecard' => AlternativePaymentInstrument::from($data),
- 'Perfect-money' => AlternativePaymentInstrument::from($data),
- 'PhonePe' => AlternativePaymentInstrument::from($data),
- 'Piastrix' => AlternativePaymentInstrument::from($data),
- 'PinPay' => AlternativePaymentInstrument::from($data),
- 'PostFinance-card' => AlternativePaymentInstrument::from($data),
- 'PostFinance-e-finance' => AlternativePaymentInstrument::from($data),
- 'QIWI' => AlternativePaymentInstrument::from($data),
- 'QPay' => AlternativePaymentInstrument::from($data),
- 'QQPay' => AlternativePaymentInstrument::from($data),
- 'Resurs' => AlternativePaymentInstrument::from($data),
- 'Ripple' => AlternativePaymentInstrument::from($data),
- 'SEPA' => AlternativePaymentInstrument::from($data),
- 'SMSVoucher' => AlternativePaymentInstrument::from($data),
- 'SPEI' => AlternativePaymentInstrument::from($data),
- 'SafetyPay' => AlternativePaymentInstrument::from($data),
- 'Samsung Pay' => AlternativePaymentInstrument::from($data),
- 'Siirto' => AlternativePaymentInstrument::from($data),
- 'Skrill' => AlternativePaymentInstrument::from($data),
- 'Skrill Rapid Transfer' => AlternativePaymentInstrument::from($data),
- 'Sofort' => AlternativePaymentInstrument::from($data),
- 'SparkPay' => AlternativePaymentInstrument::from($data),
- 'TWINT' => AlternativePaymentInstrument::from($data),
- 'Tele2' => AlternativePaymentInstrument::from($data),
- 'Telr' => AlternativePaymentInstrument::from($data),
- 'Terminaly-RF' => AlternativePaymentInstrument::from($data),
- 'Tether' => AlternativePaymentInstrument::from($data),
- 'ToditoCash-card' => AlternativePaymentInstrument::from($data),
- 'Trustly' => AlternativePaymentInstrument::from($data),
- 'Tupay' => AlternativePaymentInstrument::from($data),
- 'UPI' => AlternativePaymentInstrument::from($data),
- 'UPayCard' => AlternativePaymentInstrument::from($data),
- 'USD-coin' => AlternativePaymentInstrument::from($data),
- 'UniCrypt' => AlternativePaymentInstrument::from($data),
- 'VCreditos' => AlternativePaymentInstrument::from($data),
- 'VegaWallet' => AlternativePaymentInstrument::from($data),
- 'VenusPoint' => AlternativePaymentInstrument::from($data),
- 'Wallet88' => AlternativePaymentInstrument::from($data),
- 'WeChat Pay' => AlternativePaymentInstrument::from($data),
- 'Webmoney' => AlternativePaymentInstrument::from($data),
- 'Webpay' => AlternativePaymentInstrument::from($data),
- 'Webpay Card' => AlternativePaymentInstrument::from($data),
- 'Webpay-2' => AlternativePaymentInstrument::from($data),
- 'XPay-P2P' => AlternativePaymentInstrument::from($data),
- 'XPay-QR' => AlternativePaymentInstrument::from($data),
- 'Yandex-money' => AlternativePaymentInstrument::from($data),
- 'Zimpler' => AlternativePaymentInstrument::from($data),
- 'Zip' => AlternativePaymentInstrument::from($data),
- 'Zotapay' => AlternativePaymentInstrument::from($data),
- 'ach' => AlternativePaymentInstrument::from($data),
- 'bank-transfer' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-2' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-3' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-4' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-5' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-6' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-7' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-8' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-9' => AlternativePaymentInstrument::from($data),
- 'bitcoin' => AlternativePaymentInstrument::from($data),
- 'cash-deposit' => AlternativePaymentInstrument::from($data),
- 'cryptocurrency' => AlternativePaymentInstrument::from($data),
- 'domestic-cards' => AlternativePaymentInstrument::from($data),
- 'e-wallet' => AlternativePaymentInstrument::from($data),
- 'ePay.bg' => AlternativePaymentInstrument::from($data),
- 'eZeeWallet' => AlternativePaymentInstrument::from($data),
- 'echeck' => AlternativePaymentInstrument::from($data),
- 'ecoPayz' => AlternativePaymentInstrument::from($data),
- 'ecoPayzTurkey' => AlternativePaymentInstrument::from($data),
- 'ecoVoucher' => AlternativePaymentInstrument::from($data),
- 'ezyEFT' => AlternativePaymentInstrument::from($data),
- 'iCashOne Voucher' => AlternativePaymentInstrument::from($data),
- 'iDEAL' => AlternativePaymentInstrument::from($data),
- 'iDebit' => AlternativePaymentInstrument::from($data),
- 'iWallet' => AlternativePaymentInstrument::from($data),
- 'instant-bank-transfer' => AlternativePaymentInstrument::from($data),
- 'invoice' => AlternativePaymentInstrument::from($data),
- 'jpay' => AlternativePaymentInstrument::from($data),
- 'loonie' => AlternativePaymentInstrument::from($data),
- 'miscellaneous' => AlternativePaymentInstrument::from($data),
- 'online-bank-transfer' => AlternativePaymentInstrument::from($data),
- 'oriental-wallet' => AlternativePaymentInstrument::from($data),
- 'payment-card' => AlternativePaymentInstrument::from($data),
- 'paypal' => AlternativePaymentInstrument::from($data),
- 'phone' => AlternativePaymentInstrument::from($data),
- 'rapyd-checkout' => AlternativePaymentInstrument::from($data),
- 'rebilly-hosted-payment-form' => AlternativePaymentInstrument::from($data),
- 'reverse-withdrawal' => AlternativePaymentInstrument::from($data),
- 'swift-dbt' => AlternativePaymentInstrument::from($data),
- 'voucher' => AlternativePaymentInstrument::from($data),
- 'voucher-2' => AlternativePaymentInstrument::from($data),
- 'voucher-3' => AlternativePaymentInstrument::from($data),
- 'voucher-4' => AlternativePaymentInstrument::from($data),
- 'cash' => CashInstrument::from($data),
- 'check' => CheckInstrument::from($data),
+ 'AdvCash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Aera' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Affirm' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Afterpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Aircash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Airpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Alfa-click' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Alipay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'AmazonPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Apple Pay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'AstroPay Card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'AstroPay-GO' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Baloto' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Bancontact' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Bancontact-mobile' => AlternativePaymentInstrument::from($data, $metadata),
+ 'BankReferenced' => AlternativePaymentInstrument::from($data, $metadata),
+ 'BankSEND' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Beeline' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Belfius-direct-net' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Bizum' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Blik' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Boleto' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Boleto-2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Boleto-3' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CASHlib' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CCAvenue' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CODVoucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CashToCode' => AlternativePaymentInstrument::from($data, $metadata),
+ 'China UnionPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Clearpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Cleo' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Conekta-oxxo' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Conekta-spei' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Cupon-de-pagos' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CyberSource' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Dimoco-pay-smart' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Directa24Card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'EPS' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Efecty' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Ethereum' => AlternativePaymentInstrument::from($data, $metadata),
+ 'FasterPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Flexepin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Giropay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Google Pay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Gpaysafe' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ING-homepay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'INOVAPAY-pin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'INOVAPAY-wallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'InstaDebit' => AlternativePaymentInstrument::from($data, $metadata),
+ 'InstantPayments' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Interac' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Interac-eTransfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Interac-express-connect' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Interac-online' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Jeton' => AlternativePaymentInstrument::from($data, $metadata),
+ 'JetonCash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'KNOT' => AlternativePaymentInstrument::from($data, $metadata),
+ 'KakaoPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Khelocard' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Klarna' => AlternativePaymentInstrument::from($data, $metadata),
+ 'LPG-online' => AlternativePaymentInstrument::from($data, $metadata),
+ 'LPG-payment-card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Litecoin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MTS' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Matrix' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MaxiCash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Megafon' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MercadoPago' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MiFinity-eWallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MobilePay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MuchBetter' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MuchBetterVoucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Multibanco' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MyFatoorah' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Neosurf' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Netbanking' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Neteller' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Nordea-Solo' => AlternativePaymentInstrument::from($data, $metadata),
+ 'NordikCoin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'OXXO' => AlternativePaymentInstrument::from($data, $metadata),
+ 'OchaPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Onlineueberweisen' => AlternativePaymentInstrument::from($data, $metadata),
+ 'P24' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PIX' => AlternativePaymentInstrument::from($data, $metadata),
+ 'POLi' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Pagadito' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PagoEffectivo' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Pagsmile-deposit-express' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Pagsmile-lottery' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Pay4Fun' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PayCash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PayTabs' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PayU' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PayULatam' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Payco' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Payeer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PaymentAsia-crypto' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Paymero' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Paymero-QR' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Paynote' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Paysafecard' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Perfect-money' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PhonePe' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Piastrix' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PinPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PostFinance-card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PostFinance-e-finance' => AlternativePaymentInstrument::from($data, $metadata),
+ 'QIWI' => AlternativePaymentInstrument::from($data, $metadata),
+ 'QPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'QQPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Resurs' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Ripple' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SEPA' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SMSVoucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SPEI' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SafetyPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Samsung Pay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Siirto' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Skrill' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Skrill Rapid Transfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Sofort' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SparkPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'TWINT' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Tele2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Telr' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Terminaly-RF' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Tether' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ToditoCash-card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Trustly' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Tupay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'UPI' => AlternativePaymentInstrument::from($data, $metadata),
+ 'UPayCard' => AlternativePaymentInstrument::from($data, $metadata),
+ 'USD-coin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'UniCrypt' => AlternativePaymentInstrument::from($data, $metadata),
+ 'VCreditos' => AlternativePaymentInstrument::from($data, $metadata),
+ 'VegaWallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'VenusPoint' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Viva' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Wallet88' => AlternativePaymentInstrument::from($data, $metadata),
+ 'WeChat Pay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Webmoney' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Webpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Webpay Card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Webpay-2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'XPay-P2P' => AlternativePaymentInstrument::from($data, $metadata),
+ 'XPay-QR' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Yandex-money' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Zimpler' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Zip' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Zotapay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-3' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-4' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-5' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-6' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-7' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-8' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-9' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bitcoin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'cash-deposit' => AlternativePaymentInstrument::from($data, $metadata),
+ 'cryptocurrency' => AlternativePaymentInstrument::from($data, $metadata),
+ 'domestic-cards' => AlternativePaymentInstrument::from($data, $metadata),
+ 'e-wallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ePay.bg' => AlternativePaymentInstrument::from($data, $metadata),
+ 'eZeeWallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'echeck' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ecoPayz' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ecoPayzTurkey' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ecoVoucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ezyEFT' => AlternativePaymentInstrument::from($data, $metadata),
+ 'iCashOne Voucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'iDEAL' => AlternativePaymentInstrument::from($data, $metadata),
+ 'iDebit' => AlternativePaymentInstrument::from($data, $metadata),
+ 'iWallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'instant-bank-transfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'invoice' => AlternativePaymentInstrument::from($data, $metadata),
+ 'jpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'loonie' => AlternativePaymentInstrument::from($data, $metadata),
+ 'miscellaneous' => AlternativePaymentInstrument::from($data, $metadata),
+ 'online-bank-transfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'oriental-wallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'phone' => AlternativePaymentInstrument::from($data, $metadata),
+ 'rapyd-checkout' => AlternativePaymentInstrument::from($data, $metadata),
+ 'rebilly-hosted-payment-form' => AlternativePaymentInstrument::from($data, $metadata),
+ 'reverse-withdrawal' => AlternativePaymentInstrument::from($data, $metadata),
+ 'swift-dbt' => AlternativePaymentInstrument::from($data, $metadata),
+ 'voucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'voucher-2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'voucher-3' => AlternativePaymentInstrument::from($data, $metadata),
+ 'voucher-4' => AlternativePaymentInstrument::from($data, $metadata),
+ 'cash' => CashInstrument::from($data, $metadata),
+ 'check' => CheckInstrument::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/CustomerEmbedded.php b/src/Model/CustomerEmbedded.php
index e394c09cb..e1a75be35 100644
--- a/src/Model/CustomerEmbedded.php
+++ b/src/Model/CustomerEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomerEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('defaultPaymentInstrument', $data)) {
$this->setDefaultPaymentInstrument($data['defaultPaymentInstrument']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('leadSource', $data)) {
$this->setLeadSource($data['leadSource']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDefaultPaymentInstrument(): ?array
diff --git a/src/Model/CustomerInformation.php b/src/Model/CustomerInformation.php
index 1991fd5fd..e4c265259 100644
--- a/src/Model/CustomerInformation.php
+++ b/src/Model/CustomerInformation.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomerInformation implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('disputesAmount', $data)) {
$this->setDisputesAmount($data['disputesAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCurrency(): ?string
diff --git a/src/Model/CustomerJWT.php b/src/Model/CustomerJWT.php
index 5150e3544..f1e2e4338 100644
--- a/src/Model/CustomerJWT.php
+++ b/src/Model/CustomerJWT.php
@@ -17,14 +17,17 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomerJWT implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_CUSTOMER = 'customer';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -62,11 +65,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
@@ -136,11 +140,17 @@ public function setAcl(null|array $acl): static
return $this;
}
+ /**
+ * @return null|array
+ */
public function getCustomClaims(): ?array
{
return $this->fields['customClaims'] ?? null;
}
+ /**
+ * @param null|array $customClaims
+ */
public function setCustomClaims(null|array $customClaims): static
{
$this->fields['customClaims'] = $customClaims;
diff --git a/src/Model/CustomerLifetimeRevenue.php b/src/Model/CustomerLifetimeRevenue.php
index 8f19c8baf..d209e0b9f 100644
--- a/src/Model/CustomerLifetimeRevenue.php
+++ b/src/Model/CustomerLifetimeRevenue.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomerLifetimeRevenue implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('amountUsd', $data)) {
$this->setAmountUsd($data['amountUsd']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCurrency(): ?string
diff --git a/src/Model/CustomerTimeline.php b/src/Model/CustomerTimeline.php
index b4882c50f..c0b8395ff 100644
--- a/src/Model/CustomerTimeline.php
+++ b/src/Model/CustomerTimeline.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomerTimeline implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_ACCOUNT_PASSWORD_RESET_REQUESTED = 'account-password-reset-requested';
public const TYPE_ACCOUNT_VERIFICATION_REQUESTED = 'account-verification-requested';
@@ -198,7 +201,7 @@ class CustomerTimeline implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -227,11 +230,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/CustomersDataExport.php b/src/Model/CustomersDataExport.php
index 822569849..75f826797 100644
--- a/src/Model/CustomersDataExport.php
+++ b/src/Model/CustomersDataExport.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomersDataExport implements DataExport
{
+ use HasMetadata;
+
public const FORMAT_CSV = 'csv';
public const FORMAT_JSON = 'json';
@@ -37,7 +40,7 @@ class CustomersDataExport implements DataExport
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -90,11 +93,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResource(): string
@@ -234,15 +238,15 @@ public function getStatus(): ?string
return $this->fields['status'] ?? null;
}
- public function getDateRange(): ?DataExportDateRange
+ public function getDateRange(): ?CustomersDataExportDateRange
{
return $this->fields['dateRange'] ?? null;
}
- public function setDateRange(null|DataExportDateRange|array $dateRange): static
+ public function setDateRange(null|CustomersDataExportDateRange|array $dateRange): static
{
- if ($dateRange !== null && !($dateRange instanceof DataExportDateRange)) {
- $dateRange = DataExportDateRange::from($dateRange);
+ if ($dateRange !== null && !($dateRange instanceof CustomersDataExportDateRange)) {
+ $dateRange = CustomersDataExportDateRange::from($dateRange);
}
$this->fields['dateRange'] = $dateRange;
diff --git a/src/Model/CustomersDataExportDateRange.php b/src/Model/CustomersDataExportDateRange.php
new file mode 100644
index 000000000..6cf7ef354
--- /dev/null
+++ b/src/Model/CustomersDataExportDateRange.php
@@ -0,0 +1,96 @@
+setStart($data['start']);
+ }
+ if (array_key_exists('end', $data)) {
+ $this->setEnd($data['end']);
+ }
+ if (array_key_exists('field', $data)) {
+ $this->setField($data['field']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getStart(): string
+ {
+ return $this->fields['start'];
+ }
+
+ public function setStart(string $start): static
+ {
+ $this->fields['start'] = $start;
+
+ return $this;
+ }
+
+ public function getEnd(): string
+ {
+ return $this->fields['end'];
+ }
+
+ public function setEnd(string $end): static
+ {
+ $this->fields['end'] = $end;
+
+ return $this;
+ }
+
+ public function getField(): ?string
+ {
+ return $this->fields['field'] ?? null;
+ }
+
+ public function setField(null|string $field): static
+ {
+ $this->fields['field'] = $field;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('start', $this->fields)) {
+ $data['start'] = $this->fields['start'];
+ }
+ if (array_key_exists('end', $this->fields)) {
+ $data['end'] = $this->fields['end'];
+ }
+ if (array_key_exists('field', $this->fields)) {
+ $data['field'] = $this->fields['field'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/CustomersDataExportEmbedded.php b/src/Model/CustomersDataExportEmbedded.php
index d8c7503c2..977aef0c9 100644
--- a/src/Model/CustomersDataExportEmbedded.php
+++ b/src/Model/CustomersDataExportEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CustomersDataExportEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('user', $data)) {
$this->setUser($data['user']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): ?File
diff --git a/src/Model/CyberSource.php b/src/Model/CyberSource.php
index c8b244337..56ad28263 100644
--- a/src/Model/CyberSource.php
+++ b/src/Model/CyberSource.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class CyberSource extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'CyberSource',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): CyberSourceCredentials
diff --git a/src/Model/CyberSourceCredentials.php b/src/Model/CyberSourceCredentials.php
index 9fe44c19c..765b7b866 100644
--- a/src/Model/CyberSourceCredentials.php
+++ b/src/Model/CyberSourceCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class CyberSourceCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accessKey', $data)) {
$this->setAccessKey($data['accessKey']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccessKey(): string
diff --git a/src/Model/DLocal.php b/src/Model/DLocal.php
index 05c193c00..4be1e8fbb 100644
--- a/src/Model/DLocal.php
+++ b/src/Model/DLocal.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class DLocal extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'dLocal',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): DLocalCredentials
diff --git a/src/Model/DLocalCredentials.php b/src/Model/DLocalCredentials.php
index 67ace2d4e..b57adde6a 100644
--- a/src/Model/DLocalCredentials.php
+++ b/src/Model/DLocalCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DLocalCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('xLogin', $data)) {
$this->setXLogin($data['xLogin']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('payoutSecretKey', $data)) {
$this->setPayoutSecretKey($data['payoutSecretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getXLogin(): string
diff --git a/src/Model/DLocalSettings.php b/src/Model/DLocalSettings.php
index 9799cb93e..39905251a 100644
--- a/src/Model/DLocalSettings.php
+++ b/src/Model/DLocalSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DLocalSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('createInstallmentPlan', $data)) {
$this->setCreateInstallmentPlan($data['createInstallmentPlan']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('customerDocumentCustomField', $data)) {
$this->setCustomerDocumentCustomField($data['customerDocumentCustomField']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCreateInstallmentPlan(): ?bool
diff --git a/src/Model/DashboardResponse.php b/src/Model/DashboardResponse.php
index 4228f8c3c..f9cec1a33 100644
--- a/src/Model/DashboardResponse.php
+++ b/src/Model/DashboardResponse.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DashboardResponse implements JsonSerializable
{
+ use HasMetadata;
+
public const METRIC_APPROVAL_RATE = 'approvalRate';
public const METRIC_SALES_COUNT = 'salesCount';
@@ -90,6 +93,10 @@ class DashboardResponse implements JsonSerializable
public const METRIC_CREDIT_FILE_PROOF_ACCEPTANCE_RATE = 'creditFileProofAcceptanceRate';
+ public const METRIC_KYC_ACCEPTANCE_RATE = 'kycAcceptanceRate';
+
+ public const METRIC_KYC_REVIEW_TIME = 'kycReviewTime';
+
public const METRIC_KYC_REJECTION_RATE = 'kycRejectionRate';
public const METRIC_KYC_ACCURACY_RATE = 'kycAccuracyRate';
@@ -114,7 +121,7 @@ class DashboardResponse implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('metric', $data)) {
$this->setMetric($data['metric']);
@@ -128,11 +135,12 @@ public function __construct(array $data = [])
if (array_key_exists('segments', $data)) {
$this->setSegments($data['segments']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMetric(): ?string
diff --git a/src/Model/DashboardResponseSegments.php b/src/Model/DashboardResponseSegments.php
index 063fb7603..e7251bb65 100644
--- a/src/Model/DashboardResponseSegments.php
+++ b/src/Model/DashboardResponseSegments.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DashboardResponseSegments implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('timeseries', $data)) {
$this->setTimeseries($data['timeseries']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/DashboardResponseSegmentsTimeseries.php b/src/Model/DashboardResponseSegmentsTimeseries.php
index 1ced91c3b..37cf495c6 100644
--- a/src/Model/DashboardResponseSegmentsTimeseries.php
+++ b/src/Model/DashboardResponseSegmentsTimeseries.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DashboardResponseSegmentsTimeseries implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('date', $data)) {
$this->setDate($data['date']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDate(): ?string
diff --git a/src/Model/DataCash.php b/src/Model/DataCash.php
index c9c96e215..4215501a6 100644
--- a/src/Model/DataCash.php
+++ b/src/Model/DataCash.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class DataCash extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'DataCash',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): DataCashCredentials
diff --git a/src/Model/DataCashCredentials.php b/src/Model/DataCashCredentials.php
index 8e4a49e7f..505669967 100644
--- a/src/Model/DataCashCredentials.php
+++ b/src/Model/DataCashCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DataCashCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('client', $data)) {
$this->setClient($data['client']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('masterCardPayoutsPassword', $data)) {
$this->setMasterCardPayoutsPassword($data['masterCardPayoutsPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClient(): string
diff --git a/src/Model/DataCashSettings.php b/src/Model/DataCashSettings.php
index e9a8f9178..1c4106f35 100644
--- a/src/Model/DataCashSettings.php
+++ b/src/Model/DataCashSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DataCashSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('policy', $data)) {
$this->setPolicy($data['policy']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('delay', $data)) {
$this->setDelay($data['delay']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPolicy(): ?int
diff --git a/src/Model/DataExport.php b/src/Model/DataExport.php
index df9b7839b..34678bec1 100644
--- a/src/Model/DataExport.php
+++ b/src/Model/DataExport.php
@@ -73,16 +73,16 @@ public function getUpdatedTime(): ?DateTimeImmutable;
public function getStatus(): ?string;
- public function getDateRange(): ?DataExportDateRange;
+ public function getDateRange(): null|AmlChecksDataExportDateRange|CustomersDataExportDateRange|DisputesDataExportDateRange|InvoiceItemsDataExportDateRange|InvoicesDataExportDateRange|JournalRecordsDataExportDateRange|PayoutRequestAllocationsDataExportDateRange|PayoutRequestsDataExportDateRange|SubscriptionsDataExportDateRange|TransactionsDataExportDateRange;
- public function setDateRange(null|DataExportDateRange|array $dateRange): static;
+ public function setDateRange(null|array $dateRange): static;
/**
* @return null|ResourceLink[]
*/
public function getLinks(): ?array;
- public function getEmbedded(): null|AmlChecksDataExportEmbedded|CustomersDataExportEmbedded|DisputesDataExportEmbedded|InvoiceItemsDataExportEmbedded|InvoicesDataExportEmbedded|JournalRecordsDataExportEmbedded|SubscriptionsDataExportEmbedded|TransactionsDataExportEmbedded;
+ public function getEmbedded(): null|AmlChecksDataExportEmbedded|CustomersDataExportEmbedded|DisputesDataExportEmbedded|InvoiceItemsDataExportEmbedded|InvoicesDataExportEmbedded|JournalRecordsDataExportEmbedded|PayoutRequestAllocationsDataExportEmbedded|PayoutRequestsDataExportEmbedded|SubscriptionsDataExportEmbedded|TransactionsDataExportEmbedded;
public function setEmbedded(null|array $embedded): static;
}
diff --git a/src/Model/DataExportArguments.php b/src/Model/DataExportArguments.php
index 9f335d139..39f97b81d 100644
--- a/src/Model/DataExportArguments.php
+++ b/src/Model/DataExportArguments.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DataExportArguments implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('filter', $data)) {
$this->setFilter($data['filter']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('q', $data)) {
$this->setQ($data['q']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFilter(): ?string
diff --git a/src/Model/DataExportFactory.php b/src/Model/DataExportFactory.php
index 6911d842a..af68afea1 100644
--- a/src/Model/DataExportFactory.php
+++ b/src/Model/DataExportFactory.php
@@ -18,17 +18,19 @@
class DataExportFactory
{
- public static function from(array $data = []): DataExport
+ public static function from(array $data = [], array $metadata = []): DataExport
{
return match ($data['resource']) {
- 'amlChecks' => AmlChecksDataExport::from($data),
- 'customers' => CustomersDataExport::from($data),
- 'disputes' => DisputesDataExport::from($data),
- 'invoiceItems' => InvoiceItemsDataExport::from($data),
- 'invoices' => InvoicesDataExport::from($data),
- 'journalRecords' => JournalRecordsDataExport::from($data),
- 'subscriptions' => SubscriptionsDataExport::from($data),
- 'transactions' => TransactionsDataExport::from($data),
+ 'amlChecks' => AmlChecksDataExport::from($data, $metadata),
+ 'customers' => CustomersDataExport::from($data, $metadata),
+ 'disputes' => DisputesDataExport::from($data, $metadata),
+ 'invoiceItems' => InvoiceItemsDataExport::from($data, $metadata),
+ 'invoices' => InvoicesDataExport::from($data, $metadata),
+ 'journalRecords' => JournalRecordsDataExport::from($data, $metadata),
+ 'payoutRequestAllocations' => PayoutRequestAllocationsDataExport::from($data, $metadata),
+ 'payoutRequests' => PayoutRequestsDataExport::from($data, $metadata),
+ 'subscriptions' => SubscriptionsDataExport::from($data, $metadata),
+ 'transactions' => TransactionsDataExport::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/DataExportRecurring.php b/src/Model/DataExportRecurring.php
index f2225e731..483cb22e7 100644
--- a/src/Model/DataExportRecurring.php
+++ b/src/Model/DataExportRecurring.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DataExportRecurring implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('instruction', $data)) {
$this->setInstruction($data['instruction']);
@@ -30,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('start', $data)) {
$this->setStart($data['start']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getInstruction(): string
diff --git a/src/Model/DateCustomField.php b/src/Model/DateCustomField.php
index a2e95bc20..e93af4b3e 100644
--- a/src/Model/DateCustomField.php
+++ b/src/Model/DateCustomField.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class DateCustomField implements CustomField
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/DateCustomFieldAdditionalSchema.php b/src/Model/DateCustomFieldAdditionalSchema.php
index fa2353a20..486a38382 100644
--- a/src/Model/DateCustomFieldAdditionalSchema.php
+++ b/src/Model/DateCustomFieldAdditionalSchema.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DateCustomFieldAdditionalSchema implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('required', $data)) {
$this->setRequired($data['required']);
@@ -29,11 +32,12 @@ public function __construct(array $data = [])
if (array_key_exists('default', $data)) {
$this->setDefault($data['default']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRequired(): ?bool
diff --git a/src/Model/DateTimeCustomField.php b/src/Model/DateTimeCustomField.php
index 3ea4a4e97..669852c27 100644
--- a/src/Model/DateTimeCustomField.php
+++ b/src/Model/DateTimeCustomField.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class DateTimeCustomField implements CustomField
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/DateTimeCustomFieldAdditionalSchema.php b/src/Model/DateTimeCustomFieldAdditionalSchema.php
index d8602d3f0..1a076b4ba 100644
--- a/src/Model/DateTimeCustomFieldAdditionalSchema.php
+++ b/src/Model/DateTimeCustomFieldAdditionalSchema.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DateTimeCustomFieldAdditionalSchema implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('required', $data)) {
$this->setRequired($data['required']);
@@ -30,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('default', $data)) {
$this->setDefault($data['default']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRequired(): ?bool
diff --git a/src/Model/DccMarkup.php b/src/Model/DccMarkup.php
index 0691d4930..9785d3026 100644
--- a/src/Model/DccMarkup.php
+++ b/src/Model/DccMarkup.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DccMarkup implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/DccMarkupData.php b/src/Model/DccMarkupData.php
index 384bc9b43..5549a3322 100644
--- a/src/Model/DccMarkupData.php
+++ b/src/Model/DccMarkupData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DccMarkupData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationValue', $data)) {
$this->setAggregationValue($data['aggregationValue']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('unknownSum', $data)) {
$this->setUnknownSum($data['unknownSum']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationValue(): ?string
diff --git a/src/Model/DeleteTagAmlCheckCollectionRequest.php b/src/Model/DeleteTagAmlCheckCollectionRequest.php
index 9af871459..26fed4151 100644
--- a/src/Model/DeleteTagAmlCheckCollectionRequest.php
+++ b/src/Model/DeleteTagAmlCheckCollectionRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DeleteTagAmlCheckCollectionRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amlCheckIds', $data)) {
$this->setAmlCheckIds($data['amlCheckIds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/DeleteTagCustomerCollectionRequest.php b/src/Model/DeleteTagCustomerCollectionRequest.php
index 4bea01281..cd554c22f 100644
--- a/src/Model/DeleteTagCustomerCollectionRequest.php
+++ b/src/Model/DeleteTagCustomerCollectionRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DeleteTagCustomerCollectionRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customerIds', $data)) {
$this->setCustomerIds($data['customerIds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/DeleteTagKycDocumentCollectionRequest.php b/src/Model/DeleteTagKycDocumentCollectionRequest.php
index 2dc00087e..ee5699ffb 100644
--- a/src/Model/DeleteTagKycDocumentCollectionRequest.php
+++ b/src/Model/DeleteTagKycDocumentCollectionRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DeleteTagKycDocumentCollectionRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('kycDocumentIds', $data)) {
$this->setKycDocumentIds($data['kycDocumentIds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/Dengi.php b/src/Model/Dengi.php
index e5d86aa35..85af706df 100644
--- a/src/Model/Dengi.php
+++ b/src/Model/Dengi.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Dengi extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Dengi',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): DengiCredentials
diff --git a/src/Model/DengiCredentials.php b/src/Model/DengiCredentials.php
index aa5f81ef6..7bdac2b42 100644
--- a/src/Model/DengiCredentials.php
+++ b/src/Model/DengiCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DengiCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('projectId', $data)) {
$this->setProjectId($data['projectId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('refundKey', $data)) {
$this->setRefundKey($data['refundKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getProjectId(): string
diff --git a/src/Model/DepositCustomPropertySet.php b/src/Model/DepositCustomPropertySet.php
index 9f7efedb4..ca65ff20c 100644
--- a/src/Model/DepositCustomPropertySet.php
+++ b/src/Model/DepositCustomPropertySet.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DepositCustomPropertySet implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -42,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/DepositRequest.php b/src/Model/DepositRequest.php
index e93ac878c..45b914615 100644
--- a/src/Model/DepositRequest.php
+++ b/src/Model/DepositRequest.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DepositRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_CREATED = 'created';
public const STATUS_PENDING = 'pending';
@@ -34,7 +37,7 @@ class DepositRequest implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -96,11 +99,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/DepositRequestCustomAmount.php b/src/Model/DepositRequestCustomAmount.php
index e2eed3e5f..34977183f 100644
--- a/src/Model/DepositRequestCustomAmount.php
+++ b/src/Model/DepositRequestCustomAmount.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DepositRequestCustomAmount implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('minimum', $data)) {
$this->setMinimum($data['minimum']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('maximum', $data)) {
$this->setMaximum($data['maximum']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMinimum(): float
diff --git a/src/Model/DepositRequestEmbedded.php b/src/Model/DepositRequestEmbedded.php
index 40d2b40bc..54a19d8f1 100644
--- a/src/Model/DepositRequestEmbedded.php
+++ b/src/Model/DepositRequestEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DepositRequestEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('transactions', $data)) {
$this->setTransactions($data['transactions']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/DepositStrategy.php b/src/Model/DepositStrategy.php
index 2f51eb334..9fb2b829a 100644
--- a/src/Model/DepositStrategy.php
+++ b/src/Model/DepositStrategy.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DepositStrategy implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -54,11 +57,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/DepositStrategyAmounts.php b/src/Model/DepositStrategyAmounts.php
index 063c8951f..41a4e15c4 100644
--- a/src/Model/DepositStrategyAmounts.php
+++ b/src/Model/DepositStrategyAmounts.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DepositStrategyAmounts implements JsonSerializable
{
+ use HasMetadata;
+
public const CALCULATOR_ABSOLUTE = 'absolute';
public const CALCULATOR_PERCENT = 'percent';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('calculator', $data)) {
$this->setCalculator($data['calculator']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('minimumBaseAmount', $data)) {
$this->setMinimumBaseAmount($data['minimumBaseAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCalculator(): string
diff --git a/src/Model/DepositStrategyCustomAmount.php b/src/Model/DepositStrategyCustomAmount.php
index 62fffaf20..67a01a680 100644
--- a/src/Model/DepositStrategyCustomAmount.php
+++ b/src/Model/DepositStrategyCustomAmount.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DepositStrategyCustomAmount implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('minimum', $data)) {
$this->setMinimum($data['minimum']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('maximum', $data)) {
$this->setMaximum($data['maximum']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMinimum(): float
diff --git a/src/Model/DigitalWalletOnboardingApplePay.php b/src/Model/DigitalWalletOnboardingApplePay.php
index 6b6f32ea1..eb51f26e3 100644
--- a/src/Model/DigitalWalletOnboardingApplePay.php
+++ b/src/Model/DigitalWalletOnboardingApplePay.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DigitalWalletOnboardingApplePay implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_FAILED = 'failed';
public const STATUS_REGISTERED = 'registered';
@@ -26,7 +29,7 @@ class DigitalWalletOnboardingApplePay implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('domain', $data)) {
$this->setDomain($data['domain']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDomain(): string
diff --git a/src/Model/DigitalWalletToken.php b/src/Model/DigitalWalletToken.php
index bde7ade17..f21e32abe 100644
--- a/src/Model/DigitalWalletToken.php
+++ b/src/Model/DigitalWalletToken.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class DigitalWalletToken implements CompositeToken
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentInstrument', $data)) {
$this->setPaymentInstrument($data['paymentInstrument']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/DigitalWalletTokenPaymentInstrument.php b/src/Model/DigitalWalletTokenPaymentInstrument.php
index 9cf1a47fc..8ba1cc866 100644
--- a/src/Model/DigitalWalletTokenPaymentInstrument.php
+++ b/src/Model/DigitalWalletTokenPaymentInstrument.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DigitalWalletTokenPaymentInstrument implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_APPLE_PAY = 'Apple Pay';
public const TYPE_GOOGLE_PAY = 'Google Pay';
@@ -54,7 +57,7 @@ class DigitalWalletTokenPaymentInstrument implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -86,11 +89,12 @@ public function __construct(array $data = [])
if (array_key_exists('payload', $data)) {
$this->setPayload($data['payload']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/DigitalWalletValidation.php b/src/Model/DigitalWalletValidation.php
index 29a090a5b..e10e4428e 100644
--- a/src/Model/DigitalWalletValidation.php
+++ b/src/Model/DigitalWalletValidation.php
@@ -16,25 +16,29 @@
use InvalidArgumentException;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
abstract class DigitalWalletValidation implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_APPLE_PAY = 'Apple Pay';
private array $fields = [];
- protected function __construct(array $data = [])
+ protected function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
switch ($data['type']) {
case 'Apple Pay':
- return ApplePayValidation::from($data);
+ return ApplePayValidation::from($data, $metadata);
}
throw new InvalidArgumentException("Unsupported type value: '{$data['type']}'");
diff --git a/src/Model/DigitalWallets.php b/src/Model/DigitalWallets.php
index 7e3b4ccb7..d5bc5eba2 100644
--- a/src/Model/DigitalWallets.php
+++ b/src/Model/DigitalWallets.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DigitalWallets implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('applePay', $data)) {
$this->setApplePay($data['applePay']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('googlePay', $data)) {
$this->setGooglePay($data['googlePay']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApplePay(): ?DigitalWalletsApplePay
diff --git a/src/Model/DigitalWalletsApplePay.php b/src/Model/DigitalWalletsApplePay.php
index adb4566f6..73d9e60ba 100644
--- a/src/Model/DigitalWalletsApplePay.php
+++ b/src/Model/DigitalWalletsApplePay.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DigitalWalletsApplePay implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('isEnabled', $data)) {
$this->setIsEnabled($data['isEnabled']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('country', $data)) {
$this->setCountry($data['country']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIsEnabled(): bool
diff --git a/src/Model/DigitalWalletsGooglePay.php b/src/Model/DigitalWalletsGooglePay.php
index 3d359d37e..4e2560d5a 100644
--- a/src/Model/DigitalWalletsGooglePay.php
+++ b/src/Model/DigitalWalletsGooglePay.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DigitalWalletsGooglePay implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('isEnabled', $data)) {
$this->setIsEnabled($data['isEnabled']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('country', $data)) {
$this->setCountry($data['country']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIsEnabled(): bool
diff --git a/src/Model/Dimoco.php b/src/Model/Dimoco.php
index d865a171b..ddf51c93f 100644
--- a/src/Model/Dimoco.php
+++ b/src/Model/Dimoco.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Dimoco extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Dimoco',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): DimocoCredentials
diff --git a/src/Model/DimocoCredentials.php b/src/Model/DimocoCredentials.php
index 1137df06b..ab777b218 100644
--- a/src/Model/DimocoCredentials.php
+++ b/src/Model/DimocoCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DimocoCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Directa24.php b/src/Model/Directa24.php
index 65aabbd10..274eeebf2 100644
--- a/src/Model/Directa24.php
+++ b/src/Model/Directa24.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Directa24 extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Directa24',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): Directa24Credentials
diff --git a/src/Model/Directa24Credentials.php b/src/Model/Directa24Credentials.php
index 3b743627c..24a1d4fc0 100644
--- a/src/Model/Directa24Credentials.php
+++ b/src/Model/Directa24Credentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Directa24Credentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('x_login', $data)) {
$this->setXLogin($data['x_login']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('chargebackSecretKey', $data)) {
$this->setChargebackSecretKey($data['chargebackSecretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getXLogin(): string
diff --git a/src/Model/Directa24Settings.php b/src/Model/Directa24Settings.php
index 9308675dd..5a9bc075a 100644
--- a/src/Model/Directa24Settings.php
+++ b/src/Model/Directa24Settings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Directa24Settings implements JsonSerializable
{
+ use HasMetadata;
+
public const BANKS_AA = 'AA';
public const BANKS_AL = 'AL';
@@ -166,7 +169,7 @@ class Directa24Settings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('banks', $data)) {
$this->setBanks($data['banks']);
@@ -180,11 +183,12 @@ public function __construct(array $data = [])
if (array_key_exists('storeIdNumber', $data)) {
$this->setStoreIdNumber($data['storeIdNumber']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/DiscountFactory.php b/src/Model/DiscountFactory.php
index 066502ee0..2bd807d4f 100644
--- a/src/Model/DiscountFactory.php
+++ b/src/Model/DiscountFactory.php
@@ -18,11 +18,11 @@
class DiscountFactory
{
- public static function from(array $data = []): Discount
+ public static function from(array $data = [], array $metadata = []): Discount
{
return match ($data['type']) {
- 'fixed' => DiscountFixed::from($data),
- 'percent' => DiscountPercent::from($data),
+ 'fixed' => DiscountFixed::from($data, $metadata),
+ 'percent' => DiscountPercent::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/DiscountFixed.php b/src/Model/DiscountFixed.php
index 11bcc671a..90f6bd5de 100644
--- a/src/Model/DiscountFixed.php
+++ b/src/Model/DiscountFixed.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class DiscountFixed implements Discount
{
+ use HasMetadata;
+
public const CONTEXT_ITEMS = 'items';
public const CONTEXT_SHIPPING = 'shipping';
@@ -24,7 +28,7 @@ class DiscountFixed implements Discount
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('context', $data)) {
$this->setContext($data['context']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/DiscountPercent.php b/src/Model/DiscountPercent.php
index 5a45f6e38..6bc6eae0c 100644
--- a/src/Model/DiscountPercent.php
+++ b/src/Model/DiscountPercent.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class DiscountPercent implements Discount
{
+ use HasMetadata;
+
public const CONTEXT_ITEMS = 'items';
public const CONTEXT_SHIPPING = 'shipping';
@@ -24,7 +28,7 @@ class DiscountPercent implements Discount
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
@@ -32,11 +36,12 @@ public function __construct(array $data = [])
if (array_key_exists('context', $data)) {
$this->setContext($data['context']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/Dispute.php b/src/Model/Dispute.php
index e08516fe6..7c5ec07b3 100644
--- a/src/Model/Dispute.php
+++ b/src/Model/Dispute.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Dispute implements JsonSerializable
{
+ use HasMetadata;
+
public const CATEGORY_FRAUD = 'fraud';
public const CATEGORY_AUTHORIZATION = 'authorization';
@@ -82,7 +85,7 @@ class Dispute implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -150,11 +153,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/DisputeEmbedded.php b/src/Model/DisputeEmbedded.php
index 5d8dd8e74..539be67a3 100644
--- a/src/Model/DisputeEmbedded.php
+++ b/src/Model/DisputeEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DisputeEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transaction', $data)) {
$this->setTransaction($data['transaction']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTransaction(): ?Transaction
diff --git a/src/Model/DisputesDataExport.php b/src/Model/DisputesDataExport.php
index eac73ace9..d51ffedb4 100644
--- a/src/Model/DisputesDataExport.php
+++ b/src/Model/DisputesDataExport.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class DisputesDataExport implements DataExport
{
+ use HasMetadata;
+
public const FORMAT_CSV = 'csv';
public const FORMAT_JSON = 'json';
@@ -37,7 +40,7 @@ class DisputesDataExport implements DataExport
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -90,11 +93,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResource(): string
@@ -234,15 +238,15 @@ public function getStatus(): ?string
return $this->fields['status'] ?? null;
}
- public function getDateRange(): ?DataExportDateRange
+ public function getDateRange(): ?DisputesDataExportDateRange
{
return $this->fields['dateRange'] ?? null;
}
- public function setDateRange(null|DataExportDateRange|array $dateRange): static
+ public function setDateRange(null|DisputesDataExportDateRange|array $dateRange): static
{
- if ($dateRange !== null && !($dateRange instanceof DataExportDateRange)) {
- $dateRange = DataExportDateRange::from($dateRange);
+ if ($dateRange !== null && !($dateRange instanceof DisputesDataExportDateRange)) {
+ $dateRange = DisputesDataExportDateRange::from($dateRange);
}
$this->fields['dateRange'] = $dateRange;
diff --git a/src/Model/DataExportDateRange.php b/src/Model/DisputesDataExportDateRange.php
similarity index 83%
rename from src/Model/DataExportDateRange.php
rename to src/Model/DisputesDataExportDateRange.php
index bd5063f05..528726733 100644
--- a/src/Model/DataExportDateRange.php
+++ b/src/Model/DisputesDataExportDateRange.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
-class DataExportDateRange implements JsonSerializable
+class DisputesDataExportDateRange implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('start', $data)) {
$this->setStart($data['start']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('field', $data)) {
$this->setField($data['field']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStart(): string
diff --git a/src/Model/DisputesDataExportEmbedded.php b/src/Model/DisputesDataExportEmbedded.php
index 0a53f90ba..3664c6f3a 100644
--- a/src/Model/DisputesDataExportEmbedded.php
+++ b/src/Model/DisputesDataExportEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DisputesDataExportEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('user', $data)) {
$this->setUser($data['user']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): ?File
diff --git a/src/Model/Dragonphoenix.php b/src/Model/Dragonphoenix.php
index 7205f21a4..b5fe56794 100644
--- a/src/Model/Dragonphoenix.php
+++ b/src/Model/Dragonphoenix.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Dragonphoenix extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Dragonphoenix',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): DragonphoenixCredentials
diff --git a/src/Model/DragonphoenixCredentials.php b/src/Model/DragonphoenixCredentials.php
index 084d9556c..399e899df 100644
--- a/src/Model/DragonphoenixCredentials.php
+++ b/src/Model/DragonphoenixCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DragonphoenixCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sid', $data)) {
$this->setSid($data['sid']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('rcode', $data)) {
$this->setRcode($data['rcode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSid(): string
diff --git a/src/Model/Dropayment.php b/src/Model/Dropayment.php
index 4d9ca8e1f..bdb9c9fed 100644
--- a/src/Model/Dropayment.php
+++ b/src/Model/Dropayment.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Dropayment extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Dropayment',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): DropaymentCredentials
diff --git a/src/Model/DropaymentCredentials.php b/src/Model/DropaymentCredentials.php
index 14b196b2b..8d4ac1828 100644
--- a/src/Model/DropaymentCredentials.php
+++ b/src/Model/DropaymentCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class DropaymentCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('login', $data)) {
$this->setLogin($data['login']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLogin(): string
diff --git a/src/Model/EBANX.php b/src/Model/EBANX.php
index 710349d02..4d9487923 100644
--- a/src/Model/EBANX.php
+++ b/src/Model/EBANX.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EBANX extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'EBANX',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EBANXCredentials
diff --git a/src/Model/EBANXCredentials.php b/src/Model/EBANXCredentials.php
index e6d88af87..55c11043b 100644
--- a/src/Model/EBANXCredentials.php
+++ b/src/Model/EBANXCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EBANXCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('integrationKey', $data)) {
$this->setIntegrationKey($data['integrationKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIntegrationKey(): string
diff --git a/src/Model/EMS.php b/src/Model/EMS.php
index 92e5bb0cd..5654fd4d1 100644
--- a/src/Model/EMS.php
+++ b/src/Model/EMS.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EMS extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'EMS',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSettings(): ?EMSSettings
diff --git a/src/Model/EMSCredentials.php b/src/Model/EMSCredentials.php
index f8e8def88..d0ebc8289 100644
--- a/src/Model/EMSCredentials.php
+++ b/src/Model/EMSCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EMSCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('storeId', $data)) {
$this->setStoreId($data['storeId']);
@@ -52,11 +55,12 @@ public function __construct(array $data = [])
if (array_key_exists('sftpPrivateKey', $data)) {
$this->setSftpPrivateKey($data['sftpPrivateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStoreId(): string
diff --git a/src/Model/EMSSettings.php b/src/Model/EMSSettings.php
index 9e5414a62..6ebfcfbdc 100644
--- a/src/Model/EMSSettings.php
+++ b/src/Model/EMSSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EMSSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('delay', $data)) {
$this->setDelay($data['delay']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDelay(): ?int
diff --git a/src/Model/EMerchantPay.php b/src/Model/EMerchantPay.php
index a04ab1fa6..e6836eefc 100644
--- a/src/Model/EMerchantPay.php
+++ b/src/Model/EMerchantPay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EMerchantPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'eMerchantPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EMerchantPayCredentials
diff --git a/src/Model/EMerchantPayCredentials.php b/src/Model/EMerchantPayCredentials.php
index 6ea3ed3a6..e73e10850 100644
--- a/src/Model/EMerchantPayCredentials.php
+++ b/src/Model/EMerchantPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EMerchantPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): ?string
diff --git a/src/Model/EMerchantPaySettings.php b/src/Model/EMerchantPaySettings.php
index 1dea24b8f..c4d350254 100644
--- a/src/Model/EMerchantPaySettings.php
+++ b/src/Model/EMerchantPaySettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EMerchantPaySettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('useGenesisPlatform', $data)) {
$this->setUseGenesisPlatform($data['useGenesisPlatform']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUseGenesisPlatform(): ?bool
diff --git a/src/Model/EPG.php b/src/Model/EPG.php
index 5999c9d69..9944c85db 100644
--- a/src/Model/EPG.php
+++ b/src/Model/EPG.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EPG extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'EPG',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EPGCredentials
diff --git a/src/Model/EPGCredentials.php b/src/Model/EPGCredentials.php
index 2403171d1..ccb4e91c1 100644
--- a/src/Model/EPGCredentials.php
+++ b/src/Model/EPGCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EPGCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantKey', $data)) {
$this->setMerchantKey($data['merchantKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/EPay.php b/src/Model/EPay.php
index cea6613ed..41b9f868a 100644
--- a/src/Model/EPay.php
+++ b/src/Model/EPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ePay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EPayCredentials
diff --git a/src/Model/EPayCredentials.php b/src/Model/EPayCredentials.php
index 0eb98676d..68ab0fa31 100644
--- a/src/Model/EPayCredentials.php
+++ b/src/Model/EPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/EPro.php b/src/Model/EPro.php
index cb277a17e..bfc6bfdcb 100644
--- a/src/Model/EPro.php
+++ b/src/Model/EPro.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EPro extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'EPro',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EProCredentials
diff --git a/src/Model/EProCredentials.php b/src/Model/EProCredentials.php
index 858c6ca38..1262b4957 100644
--- a/src/Model/EProCredentials.php
+++ b/src/Model/EProCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EProCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiSecretKey', $data)) {
$this->setApiSecretKey($data['apiSecretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiSecretKey(): string
diff --git a/src/Model/EZeeWallet.php b/src/Model/EZeeWallet.php
index a795b0b62..cf9f09732 100644
--- a/src/Model/EZeeWallet.php
+++ b/src/Model/EZeeWallet.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EZeeWallet extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'eZeeWallet',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EZeeWalletCredentials
diff --git a/src/Model/EZeeWalletCredentials.php b/src/Model/EZeeWalletCredentials.php
index 544d5748d..df359bbb0 100644
--- a/src/Model/EZeeWalletCredentials.php
+++ b/src/Model/EZeeWalletCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EZeeWalletCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiUsername', $data)) {
$this->setApiUsername($data['apiUsername']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiPassword', $data)) {
$this->setApiPassword($data['apiPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiUsername(): string
diff --git a/src/Model/EasyPayDirect.php b/src/Model/EasyPayDirect.php
index aa7da0207..057e3e8f2 100644
--- a/src/Model/EasyPayDirect.php
+++ b/src/Model/EasyPayDirect.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EasyPayDirect extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'EasyPayDirect',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EasyPayDirectCredentials
diff --git a/src/Model/EasyPayDirectCredentials.php b/src/Model/EasyPayDirectCredentials.php
index 60f790e1b..ce3791281 100644
--- a/src/Model/EasyPayDirectCredentials.php
+++ b/src/Model/EasyPayDirectCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EasyPayDirectCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSecretKey(): string
diff --git a/src/Model/EcoPayz.php b/src/Model/EcoPayz.php
index b2cdc8cec..39bdc8c63 100644
--- a/src/Model/EcoPayz.php
+++ b/src/Model/EcoPayz.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EcoPayz extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ecoPayz',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EcoPayzCredentials
diff --git a/src/Model/EcoPayzCredentials.php b/src/Model/EcoPayzCredentials.php
index 17385d8be..5d63bb529 100644
--- a/src/Model/EcoPayzCredentials.php
+++ b/src/Model/EcoPayzCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EcoPayzCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentPageId', $data)) {
$this->setPaymentPageId($data['paymentPageId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantPassword', $data)) {
$this->setMerchantPassword($data['merchantPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentPageId(): string
diff --git a/src/Model/EcoPayzSettings.php b/src/Model/EcoPayzSettings.php
index 2af3ad0b6..1b7c2ad78 100644
--- a/src/Model/EcoPayzSettings.php
+++ b/src/Model/EcoPayzSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EcoPayzSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const VALID_CURRENCY_CAD = 'CAD';
public const VALID_CURRENCY_EUR = 'EUR';
@@ -28,16 +31,17 @@ class EcoPayzSettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('validCurrency', $data)) {
$this->setValidCurrency($data['validCurrency']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getValidCurrency(): string
diff --git a/src/Model/EcoPayzTurkey.php b/src/Model/EcoPayzTurkey.php
index a9ee63bdc..d9b921422 100644
--- a/src/Model/EcoPayzTurkey.php
+++ b/src/Model/EcoPayzTurkey.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EcoPayzTurkey extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ecoPayzTurkey',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EcoPayzTurkeyCredentials
diff --git a/src/Model/EcoPayzTurkeyCredentials.php b/src/Model/EcoPayzTurkeyCredentials.php
index 66b11f934..432415e15 100644
--- a/src/Model/EcoPayzTurkeyCredentials.php
+++ b/src/Model/EcoPayzTurkeyCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EcoPayzTurkeyCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentPageId', $data)) {
$this->setPaymentPageId($data['paymentPageId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantPassword', $data)) {
$this->setMerchantPassword($data['merchantPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentPageId(): string
diff --git a/src/Model/EcoPayzTurkeySettings.php b/src/Model/EcoPayzTurkeySettings.php
index cd976fbef..4e01d1ea5 100644
--- a/src/Model/EcoPayzTurkeySettings.php
+++ b/src/Model/EcoPayzTurkeySettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EcoPayzTurkeySettings implements JsonSerializable
{
+ use HasMetadata;
+
public const VALID_CURRENCY_CAD = 'CAD';
public const VALID_CURRENCY_EUR = 'EUR';
@@ -28,16 +31,17 @@ class EcoPayzTurkeySettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('validCurrency', $data)) {
$this->setValidCurrency($data['validCurrency']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getValidCurrency(): string
diff --git a/src/Model/EcorePay.php b/src/Model/EcorePay.php
index b6202eb0d..480aca189 100644
--- a/src/Model/EcorePay.php
+++ b/src/Model/EcorePay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EcorePay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'EcorePay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EcorePayCredentials
diff --git a/src/Model/EcorePayCredentials.php b/src/Model/EcorePayCredentials.php
index 7dc8f21a6..98b473e89 100644
--- a/src/Model/EcorePayCredentials.php
+++ b/src/Model/EcorePayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EcorePayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accountId', $data)) {
$this->setAccountId($data['accountId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('accountAuth', $data)) {
$this->setAccountAuth($data['accountAuth']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccountId(): string
diff --git a/src/Model/Edd.php b/src/Model/Edd.php
index e28013730..92e620e85 100644
--- a/src/Model/Edd.php
+++ b/src/Model/Edd.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Edd implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('parsedScore', $data)) {
$this->setParsedScore($data['parsedScore']);
@@ -42,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getParsedScore(): ?EddParsedScore
diff --git a/src/Model/EddParsedScore.php b/src/Model/EddParsedScore.php
index 5bb71de12..0221e3645 100644
--- a/src/Model/EddParsedScore.php
+++ b/src/Model/EddParsedScore.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EddParsedScore implements JsonSerializable
{
+ use HasMetadata;
+
public const OCCUPATION_NOT_FOUND = 'not-found';
public const OCCUPATION_UNLIKELY = 'unlikely';
@@ -60,7 +63,7 @@ class EddParsedScore implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('occupation', $data)) {
$this->setOccupation($data['occupation']);
@@ -86,11 +89,12 @@ public function __construct(array $data = [])
if (array_key_exists('fraudDetails', $data)) {
$this->setFraudDetails($data['fraudDetails']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getOccupation(): ?string
diff --git a/src/Model/EddScore.php b/src/Model/EddScore.php
index 0676add1e..628862893 100644
--- a/src/Model/EddScore.php
+++ b/src/Model/EddScore.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EddScore implements JsonSerializable
{
+ use HasMetadata;
+
public const OCCUPATION_NOT_FOUND = 'not-found';
public const OCCUPATION_UNLIKELY = 'unlikely';
@@ -60,7 +63,7 @@ class EddScore implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('occupation', $data)) {
$this->setOccupation($data['occupation']);
@@ -74,11 +77,12 @@ public function __construct(array $data = [])
if (array_key_exists('fraud', $data)) {
$this->setFraud($data['fraud']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getOccupation(): ?string
diff --git a/src/Model/EddScoreDetails.php b/src/Model/EddScoreDetails.php
index 09fc1be1f..83f7294ab 100644
--- a/src/Model/EddScoreDetails.php
+++ b/src/Model/EddScoreDetails.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EddScoreDetails implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('url', $data)) {
$this->setUrl($data['url']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('details', $data)) {
$this->setDetails($data['details']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUrl(): ?string
diff --git a/src/Model/EddSearchResult.php b/src/Model/EddSearchResult.php
index c5e3c2b3f..677513af5 100644
--- a/src/Model/EddSearchResult.php
+++ b/src/Model/EddSearchResult.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EddSearchResult implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_OCCUPATION = 'occupation';
public const TYPE_ARREST = 'arrest';
@@ -30,7 +33,7 @@ class EddSearchResult implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/EddTimeline.php b/src/Model/EddTimeline.php
index cf55dcde9..1949cd861 100644
--- a/src/Model/EddTimeline.php
+++ b/src/Model/EddTimeline.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EddTimeline implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_EDD_SEARCH_PERFORMED = 'edd-search-performed';
public const TYPE_EDD_SCORE_MANUALLY_UPDATED = 'edd-score-manually-updated';
@@ -34,7 +37,7 @@ class EddTimeline implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -57,11 +60,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/Elavon.php b/src/Model/Elavon.php
index bfaa060f8..db6a73d4b 100644
--- a/src/Model/Elavon.php
+++ b/src/Model/Elavon.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Elavon extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Elavon',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ElavonCredentials
diff --git a/src/Model/ElavonCredentials.php b/src/Model/ElavonCredentials.php
index 44faf845b..c7dae79fd 100644
--- a/src/Model/ElavonCredentials.php
+++ b/src/Model/ElavonCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ElavonCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('ssl_merchant_id', $data)) {
$this->setSslMerchantId($data['ssl_merchant_id']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('ssl_pin', $data)) {
$this->setSslPin($data['ssl_pin']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSslMerchantId(): string
diff --git a/src/Model/EmailDeliverySetting.php b/src/Model/EmailDeliverySetting.php
index f99e6a420..788d3917b 100644
--- a/src/Model/EmailDeliverySetting.php
+++ b/src/Model/EmailDeliverySetting.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EmailDeliverySetting implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_VERIFIED = 'verified';
@@ -38,7 +41,7 @@ class EmailDeliverySetting implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -70,11 +73,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/EmailMessage.php b/src/Model/EmailMessage.php
index e2aecd026..fe603375b 100644
--- a/src/Model/EmailMessage.php
+++ b/src/Model/EmailMessage.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EmailMessage implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_DRAFT = 'draft';
public const STATUS_OUTBOX = 'outbox';
@@ -30,7 +33,7 @@ class EmailMessage implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -89,11 +92,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/EmailMessageAttachments.php b/src/Model/EmailMessageAttachments.php
index 642dc0d06..6c62b0e9a 100644
--- a/src/Model/EmailMessageAttachments.php
+++ b/src/Model/EmailMessageAttachments.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EmailMessageAttachments implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('resourceType', $data)) {
$this->setResourceType($data['resourceType']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('resourceId', $data)) {
$this->setResourceId($data['resourceId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResourceType(): string
diff --git a/src/Model/EmailNotification.php b/src/Model/EmailNotification.php
index 58920da69..7934ae02b 100644
--- a/src/Model/EmailNotification.php
+++ b/src/Model/EmailNotification.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EmailNotification implements JsonSerializable
{
+ use HasMetadata;
+
public const EVENT_TYPE_ACCOUNT_PASSWORD_RESET_REQUESTED = 'account-password-reset-requested';
public const EVENT_TYPE_ACCOUNT_VERIFICATION_REQUESTED = 'account-verification-requested';
@@ -212,7 +215,7 @@ class EmailNotification implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('eventType', $data)) {
$this->setEventType($data['eventType']);
@@ -229,11 +232,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEventType(): ?string
diff --git a/src/Model/EmailNotificationNotifications.php b/src/Model/EmailNotificationNotifications.php
index 466e4a0ae..0cdf1a0fd 100644
--- a/src/Model/EmailNotificationNotifications.php
+++ b/src/Model/EmailNotificationNotifications.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EmailNotificationNotifications implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('labels', $data)) {
$this->setLabels($data['labels']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('isActive', $data)) {
$this->setIsActive($data['isActive']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/Euteller.php b/src/Model/Euteller.php
index 1ae74d378..3f5da7830 100644
--- a/src/Model/Euteller.php
+++ b/src/Model/Euteller.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Euteller extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Euteller',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EutellerCredentials
diff --git a/src/Model/EutellerCredentials.php b/src/Model/EutellerCredentials.php
index bf1b030d9..a3c7bb8d1 100644
--- a/src/Model/EutellerCredentials.php
+++ b/src/Model/EutellerCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EutellerCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/ExperianCredential.php b/src/Model/ExperianCredential.php
index 7f0ff16de..d1cd26650 100644
--- a/src/Model/ExperianCredential.php
+++ b/src/Model/ExperianCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ExperianCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -27,7 +30,7 @@ class ExperianCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/ExternalIdentifier.php b/src/Model/ExternalIdentifier.php
index 5259ad7dd..695757234 100644
--- a/src/Model/ExternalIdentifier.php
+++ b/src/Model/ExternalIdentifier.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ExternalIdentifier implements JsonSerializable
{
+ use HasMetadata;
+
public const RESOURCE_CUSTOMERS = 'customers';
public const RESOURCE_INVOICES = 'invoices';
@@ -36,7 +39,7 @@ class ExternalIdentifier implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('resource', $data)) {
$this->setResource($data['resource']);
@@ -59,11 +62,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResource(): ?string
diff --git a/src/Model/ExternalServiceSettings.php b/src/Model/ExternalServiceSettings.php
index 50c3e3546..a8bdb099b 100644
--- a/src/Model/ExternalServiceSettings.php
+++ b/src/Model/ExternalServiceSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ExternalServiceSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quickBooksOnline', $data)) {
$this->setQuickBooksOnline($data['quickBooksOnline']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getQuickBooksOnline(): ?QuickBooksOnlineExternalServiceSettings
diff --git a/src/Model/Ezeebill.php b/src/Model/Ezeebill.php
index 5281a823a..0b5a47e4f 100644
--- a/src/Model/Ezeebill.php
+++ b/src/Model/Ezeebill.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Ezeebill extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Ezeebill',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EzeebillCredentials
diff --git a/src/Model/EzeebillCredentials.php b/src/Model/EzeebillCredentials.php
index c4728fe0c..1bc53b293 100644
--- a/src/Model/EzeebillCredentials.php
+++ b/src/Model/EzeebillCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EzeebillCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('hashKey', $data)) {
$this->setHashKey($data['hashKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/EzyEFT.php b/src/Model/EzyEFT.php
index 5bea8487b..487ac4313 100644
--- a/src/Model/EzyEFT.php
+++ b/src/Model/EzyEFT.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class EzyEFT extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ezyEFT',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): EzyEFTCredentials
diff --git a/src/Model/EzyEFTCredentials.php b/src/Model/EzyEFTCredentials.php
index e64ef5234..e28cb8c93 100644
--- a/src/Model/EzyEFTCredentials.php
+++ b/src/Model/EzyEFTCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class EzyEFTCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantToken', $data)) {
$this->setMerchantToken($data['merchantToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Fee.php b/src/Model/Fee.php
index 0658904b8..26b231999 100644
--- a/src/Model/Fee.php
+++ b/src/Model/Fee.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Fee implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_BUY = 'buy';
public const TYPE_SELL = 'sell';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/FeeFormulaFactory.php b/src/Model/FeeFormulaFactory.php
index 1b8535d42..191d06a48 100644
--- a/src/Model/FeeFormulaFactory.php
+++ b/src/Model/FeeFormulaFactory.php
@@ -18,11 +18,11 @@
class FeeFormulaFactory
{
- public static function from(array $data = []): FeeFormula
+ public static function from(array $data = [], array $metadata = []): FeeFormula
{
return match ($data['type']) {
- 'fixed-fee' => FixedFeeFormula::from($data),
- 'percentage' => PercentageFeeFormula::from($data),
+ 'fixed-fee' => FixedFeeFormula::from($data, $metadata),
+ 'percentage' => PercentageFeeFormula::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/File.php b/src/Model/File.php
index a8baa9c48..e24c4894a 100644
--- a/src/Model/File.php
+++ b/src/Model/File.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class File implements JsonSerializable
{
+ use HasMetadata;
+
public const SOURCE_TYPE_UPLOAD = 'upload';
public const SOURCE_TYPE_CAMERA = 'camera';
@@ -46,7 +49,7 @@ class File implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -96,11 +99,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/FileCreateFromInline.php b/src/Model/FileCreateFromInline.php
index af420e846..1879ce33c 100644
--- a/src/Model/FileCreateFromInline.php
+++ b/src/Model/FileCreateFromInline.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class FileCreateFromInline implements PostFileRequest
{
+ use HasMetadata;
+
public const SOURCE_TYPE_UPLOAD = 'upload';
public const SOURCE_TYPE_CAMERA = 'camera';
@@ -28,7 +32,7 @@ class FileCreateFromInline implements PostFileRequest
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
@@ -48,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('tags', $data)) {
$this->setTags($data['tags']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): string
diff --git a/src/Model/FileCreateFromUrl.php b/src/Model/FileCreateFromUrl.php
index e2d4fcc8b..f222ed2c5 100644
--- a/src/Model/FileCreateFromUrl.php
+++ b/src/Model/FileCreateFromUrl.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class FileCreateFromUrl implements PostFileRequest
{
+ use HasMetadata;
+
public const SOURCE_TYPE_UPLOAD = 'upload';
public const SOURCE_TYPE_CAMERA = 'camera';
@@ -28,7 +32,7 @@ class FileCreateFromUrl implements PostFileRequest
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('url', $data)) {
$this->setUrl($data['url']);
@@ -48,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('tags', $data)) {
$this->setTags($data['tags']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUrl(): string
diff --git a/src/Model/FinTecSystems.php b/src/Model/FinTecSystems.php
index 144591d74..4abe50d4f 100644
--- a/src/Model/FinTecSystems.php
+++ b/src/Model/FinTecSystems.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class FinTecSystems extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'FinTecSystems',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): FinTecSystemsCredentials
diff --git a/src/Model/FinTecSystemsCredentials.php b/src/Model/FinTecSystemsCredentials.php
index 19a1fc610..08dc81d17 100644
--- a/src/Model/FinTecSystemsCredentials.php
+++ b/src/Model/FinTecSystemsCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FinTecSystemsCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/FinTecSystemsSettings.php b/src/Model/FinTecSystemsSettings.php
index 893b05054..57b389b09 100644
--- a/src/Model/FinTecSystemsSettings.php
+++ b/src/Model/FinTecSystemsSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FinTecSystemsSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const RECIPIENT_COUNTRY_AT = 'AT';
public const RECIPIENT_COUNTRY_CH = 'CH';
@@ -26,7 +29,7 @@ class FinTecSystemsSettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('recipientIBAN', $data)) {
$this->setRecipientIBAN($data['recipientIBAN']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('recipientHolder', $data)) {
$this->setRecipientHolder($data['recipientHolder']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRecipientIBAN(): string
diff --git a/src/Model/Finrax.php b/src/Model/Finrax.php
index e96b1b22b..f3e154ff0 100644
--- a/src/Model/Finrax.php
+++ b/src/Model/Finrax.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Finrax extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Finrax',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): FinraxCredentials
diff --git a/src/Model/FinraxCredentials.php b/src/Model/FinraxCredentials.php
index efddd3465..c1b84ca8b 100644
--- a/src/Model/FinraxCredentials.php
+++ b/src/Model/FinraxCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FinraxCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('businessId', $data)) {
$this->setBusinessId($data['businessId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBusinessId(): string
diff --git a/src/Model/FinraxSettings.php b/src/Model/FinraxSettings.php
index 6d1bdcfc6..1f36f73dc 100644
--- a/src/Model/FinraxSettings.php
+++ b/src/Model/FinraxSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FinraxSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('tolerancePercentage', $data)) {
$this->setTolerancePercentage($data['tolerancePercentage']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTolerancePercentage(): int
diff --git a/src/Model/FixedFeeFormula.php b/src/Model/FixedFeeFormula.php
index 0b5be922c..635535e5c 100644
--- a/src/Model/FixedFeeFormula.php
+++ b/src/Model/FixedFeeFormula.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class FixedFeeFormula implements FeeFormula
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/Flexepin.php b/src/Model/Flexepin.php
index 12c4f2b92..ed8e261ab 100644
--- a/src/Model/Flexepin.php
+++ b/src/Model/Flexepin.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Flexepin extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Flexepin',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): FlexepinCredentials
diff --git a/src/Model/FlexepinCredentials.php b/src/Model/FlexepinCredentials.php
index b0e3d136e..d251e4db7 100644
--- a/src/Model/FlexepinCredentials.php
+++ b/src/Model/FlexepinCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FlexepinCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecret', $data)) {
$this->setApiSecret($data['apiSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/FlexepinSettings.php b/src/Model/FlexepinSettings.php
index 5cc039632..8b8509c87 100644
--- a/src/Model/FlexepinSettings.php
+++ b/src/Model/FlexepinSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FlexepinSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('adjustAmountFromVoucher', $data)) {
$this->setAdjustAmountFromVoucher($data['adjustAmountFromVoucher']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAdjustAmountFromVoucher(): ?bool
diff --git a/src/Model/FlexiblePlan.php b/src/Model/FlexiblePlan.php
index 6e776b9ef..ba4c18f77 100644
--- a/src/Model/FlexiblePlan.php
+++ b/src/Model/FlexiblePlan.php
@@ -18,7 +18,7 @@
interface FlexiblePlan extends ConfigurablePlan
{
- public function getId(): ?string;
+ public function getId(): string;
public function getName(): string;
diff --git a/src/Model/FlexiblePlanFactory.php b/src/Model/FlexiblePlanFactory.php
index 8f78e4ecd..b9b22671d 100644
--- a/src/Model/FlexiblePlanFactory.php
+++ b/src/Model/FlexiblePlanFactory.php
@@ -16,15 +16,15 @@
class FlexiblePlanFactory
{
- public static function from(array $data = []): FlexiblePlan
+ public static function from(array $data = [], array $metadata = []): FlexiblePlan
{
if ($data['isTrialOnly'] ?? false) {
- return TrialOnlyPlan::from($data);
+ return TrialOnlyPlan::from($data, $metadata);
}
if (isset($data['recurringInterval'])) {
- return SubscriptionPlan::from($data);
+ return SubscriptionPlan::from($data, $metadata);
}
- return OneTimeSalePlan::from($data);
+ return OneTimeSalePlan::from($data, $metadata);
}
}
diff --git a/src/Model/ForgotPassword.php b/src/Model/ForgotPassword.php
index a5dae7a7e..1cc6b13b6 100644
--- a/src/Model/ForgotPassword.php
+++ b/src/Model/ForgotPassword.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ForgotPassword implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('email', $data)) {
$this->setEmail($data['email']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEmail(): string
diff --git a/src/Model/Forte.php b/src/Model/Forte.php
index 6ca890668..68d650f9f 100644
--- a/src/Model/Forte.php
+++ b/src/Model/Forte.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Forte extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Forte',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ForteCredentials
diff --git a/src/Model/ForteCredentials.php b/src/Model/ForteCredentials.php
index eab4df6b9..32f48063c 100644
--- a/src/Model/ForteCredentials.php
+++ b/src/Model/ForteCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ForteCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accountId', $data)) {
$this->setAccountId($data['accountId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecretKey', $data)) {
$this->setApiSecretKey($data['apiSecretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccountId(): string
diff --git a/src/Model/FundSend.php b/src/Model/FundSend.php
index 66aad0c36..40c063ad5 100644
--- a/src/Model/FundSend.php
+++ b/src/Model/FundSend.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class FundSend extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'FundSend',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): FundSendCredentials
diff --git a/src/Model/FundSendCredentials.php b/src/Model/FundSendCredentials.php
index 1c5a8a479..b264ac128 100644
--- a/src/Model/FundSendCredentials.php
+++ b/src/Model/FundSendCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FundSendCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretWord', $data)) {
$this->setSecretWord($data['secretWord']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/FundsMatches.php b/src/Model/FundsMatches.php
index cf234f66a..2cd436118 100644
--- a/src/Model/FundsMatches.php
+++ b/src/Model/FundsMatches.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FundsMatches implements JsonSerializable
{
+ use HasMetadata;
+
public const DOCUMENT_SUBTYPE_PASSPORT = 'passport';
public const DOCUMENT_SUBTYPE_ID_CARD = 'id-card';
@@ -74,7 +77,7 @@ class FundsMatches implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('firstName', $data)) {
$this->setFirstName($data['firstName']);
@@ -85,11 +88,12 @@ public function __construct(array $data = [])
if (array_key_exists('documentSubtype', $data)) {
$this->setDocumentSubtype($data['documentSubtype']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFirstName(): ?string
diff --git a/src/Model/FutureRenewals.php b/src/Model/FutureRenewals.php
index 4c48beb56..a9bc1c872 100644
--- a/src/Model/FutureRenewals.php
+++ b/src/Model/FutureRenewals.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FutureRenewals implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/FutureRenewalsData.php b/src/Model/FutureRenewalsData.php
index e30deadcc..97f58faef 100644
--- a/src/Model/FutureRenewalsData.php
+++ b/src/Model/FutureRenewalsData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FutureRenewalsData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('date', $data)) {
$this->setDate($data['date']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('plansCount', $data)) {
$this->setPlansCount($data['plansCount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDate(): ?string
diff --git a/src/Model/FutureRenewalsDataPlansCount.php b/src/Model/FutureRenewalsDataPlansCount.php
index 36b98f249..a5ae45acd 100644
--- a/src/Model/FutureRenewalsDataPlansCount.php
+++ b/src/Model/FutureRenewalsDataPlansCount.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class FutureRenewalsDataPlansCount implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('planId', $data)) {
$this->setPlanId($data['planId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('count', $data)) {
$this->setCount($data['count']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPlanId(): ?string
diff --git a/src/Model/GET.php b/src/Model/GET.php
index c68102be5..f7211f992 100644
--- a/src/Model/GET.php
+++ b/src/Model/GET.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class GET extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'GET',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): GETCredentials
diff --git a/src/Model/GETCredentials.php b/src/Model/GETCredentials.php
index 4c632898e..db82685f3 100644
--- a/src/Model/GETCredentials.php
+++ b/src/Model/GETCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GETCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accountId', $data)) {
$this->setAccountId($data['accountId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccountId(): string
diff --git a/src/Model/Gate2way.php b/src/Model/Gate2way.php
index dfd27e392..ed735b78e 100644
--- a/src/Model/Gate2way.php
+++ b/src/Model/Gate2way.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Gate2way extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'gate2way',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): Gate2wayCredentials
diff --git a/src/Model/Gate2wayCredentials.php b/src/Model/Gate2wayCredentials.php
index ebd175bd9..3a109fe04 100644
--- a/src/Model/Gate2wayCredentials.php
+++ b/src/Model/Gate2wayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Gate2wayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecret', $data)) {
$this->setApiSecret($data['apiSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/GatewayAccount.php b/src/Model/GatewayAccount.php
index 669b606c5..211581fd3 100644
--- a/src/Model/GatewayAccount.php
+++ b/src/Model/GatewayAccount.php
@@ -18,9 +18,12 @@
use DateTimeInterface;
use InvalidArgumentException;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
abstract class GatewayAccount implements JsonSerializable
{
+ use HasMetadata;
+
public const GATEWAY_NAME_A1_GATEWAY = 'A1Gateway';
public const GATEWAY_NAME_ACI = 'ACI';
@@ -449,6 +452,8 @@ abstract class GatewayAccount implements JsonSerializable
public const GATEWAY_NAME_VEGA_WALLET = 'VegaWallet';
+ public const GATEWAY_NAME_VIVA = 'Viva';
+
public const GATEWAY_NAME_WALLET88 = 'Wallet88';
public const GATEWAY_NAME_WALPAY = 'Walpay';
@@ -885,16 +890,6 @@ abstract class GatewayAccount implements JsonSerializable
public const ACQUIRER_NAME_ZOTAPAY = 'Zotapay';
- public const METHOD_PAYMENT_CARD = 'payment-card';
-
- public const METHOD_ACH = 'ach';
-
- public const METHOD_CASH = 'cash';
-
- public const METHOD_CHECK = 'check';
-
- public const METHOD_PAYPAL = 'paypal';
-
public const METHOD_ADV_CASH = 'AdvCash';
public const METHOD_AERA = 'Aera';
@@ -1243,6 +1238,8 @@ abstract class GatewayAccount implements JsonSerializable
public const METHOD_VENUS_POINT = 'VenusPoint';
+ public const METHOD_VIVA = 'Viva';
+
public const METHOD_VOUCHER = 'voucher';
public const METHOD_VOUCHER2 = 'voucher-2';
@@ -1329,7 +1326,7 @@ abstract class GatewayAccount implements JsonSerializable
private array $fields = [];
- protected function __construct(array $data = [])
+ protected function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -1430,455 +1427,458 @@ protected function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
switch ($data['gatewayName']) {
case 'A1Gateway':
- return A1Gateway::from($data);
+ return A1Gateway::from($data, $metadata);
case 'ACI':
- return ACI::from($data);
+ return ACI::from($data, $metadata);
case 'Adyen':
- return Adyen::from($data);
+ return Adyen::from($data, $metadata);
case 'Aera':
- return Aera::from($data);
+ return Aera::from($data, $metadata);
case 'Aircash':
- return Aircash::from($data);
+ return Aircash::from($data, $metadata);
case 'Airpay':
- return Airpay::from($data);
+ return Airpay::from($data, $metadata);
case 'Airwallex':
- return Airwallex::from($data);
+ return Airwallex::from($data, $metadata);
case 'AmazonPay':
- return AmazonPay::from($data);
+ return AmazonPay::from($data, $metadata);
case 'AmexVPC':
- return AmexVPC::from($data);
+ return AmexVPC::from($data, $metadata);
case 'Antom':
- return Antom::from($data);
+ return Antom::from($data, $metadata);
case 'ApcoPay':
- return ApcoPay::from($data);
+ return ApcoPay::from($data, $metadata);
case 'AsiaPay':
- return AsiaPay::from($data);
+ return AsiaPay::from($data, $metadata);
case 'AsiaPaymentGateway':
- return AsiaPaymentGateway::from($data);
+ return AsiaPaymentGateway::from($data, $metadata);
case 'AstroPayCard':
- return AstroPayCard::from($data);
+ return AstroPayCard::from($data, $metadata);
case 'AuthorizeNet':
- return AuthorizeNet::from($data);
+ return AuthorizeNet::from($data, $metadata);
case 'Awepay':
- return Awepay::from($data);
+ return Awepay::from($data, $metadata);
case 'Bambora':
- return Bambora::from($data);
+ return Bambora::from($data, $metadata);
case 'BankSEND':
- return BankSEND::from($data);
+ return BankSEND::from($data, $metadata);
case 'BitPay':
- return BitPay::from($data);
+ return BitPay::from($data, $metadata);
case 'BlueSnap':
- return BlueSnap::from($data);
+ return BlueSnap::from($data, $metadata);
case 'BraintreePayments':
- return BraintreePayments::from($data);
+ return BraintreePayments::from($data, $metadata);
case 'Buckaroo':
- return Buckaroo::from($data);
+ return Buckaroo::from($data, $metadata);
case 'BVNK':
- return BVNK::from($data);
+ return BVNK::from($data, $metadata);
case 'Cardknox':
- return Cardknox::from($data);
+ return Cardknox::from($data, $metadata);
case 'Cashflows':
- return Cashflows::from($data);
+ return Cashflows::from($data, $metadata);
case 'CASHlib':
- return CASHlib::from($data);
+ return CASHlib::from($data, $metadata);
case 'Cashterminal':
- return Cashterminal::from($data);
+ return Cashterminal::from($data, $metadata);
case 'CashToCode':
- return CashToCode::from($data);
+ return CashToCode::from($data, $metadata);
case 'CauriPayment':
- return CauriPayment::from($data);
+ return CauriPayment::from($data, $metadata);
case 'Cayan':
- return Cayan::from($data);
+ return Cayan::from($data, $metadata);
case 'CCAvenue':
- return CCAvenue::from($data);
+ return CCAvenue::from($data, $metadata);
case 'Chase':
- return Chase::from($data);
+ return Chase::from($data, $metadata);
case 'CheckoutCom':
- return CheckoutCom::from($data);
+ return CheckoutCom::from($data, $metadata);
case 'Chillstock':
- return Chillstock::from($data);
+ return Chillstock::from($data, $metadata);
case 'Circle':
- return Circle::from($data);
+ return Circle::from($data, $metadata);
case 'Citadel':
- return Citadel::from($data);
+ return Citadel::from($data, $metadata);
case 'Clearhaus':
- return Clearhaus::from($data);
+ return Clearhaus::from($data, $metadata);
case 'Cleo':
- return Cleo::from($data);
+ return Cleo::from($data, $metadata);
case 'CODVoucher':
- return CODVoucher::from($data);
+ return CODVoucher::from($data, $metadata);
case 'Coinbase':
- return Coinbase::from($data);
+ return Coinbase::from($data, $metadata);
case 'CoinGate':
- return CoinGate::from($data);
+ return CoinGate::from($data, $metadata);
case 'CoinPayments':
- return CoinPayments::from($data);
+ return CoinPayments::from($data, $metadata);
case 'Conekta':
- return Conekta::from($data);
+ return Conekta::from($data, $metadata);
case 'Coppr':
- return Coppr::from($data);
+ return Coppr::from($data, $metadata);
case 'Credorax':
- return Credorax::from($data);
+ return Credorax::from($data, $metadata);
case 'Cryptomus':
- return Cryptomus::from($data);
+ return Cryptomus::from($data, $metadata);
case 'Cryptonator':
- return Cryptonator::from($data);
+ return Cryptonator::from($data, $metadata);
case 'CyberSource':
- return CyberSource::from($data);
+ return CyberSource::from($data, $metadata);
case 'DataCash':
- return DataCash::from($data);
+ return DataCash::from($data, $metadata);
case 'Dengi':
- return Dengi::from($data);
+ return Dengi::from($data, $metadata);
case 'Dimoco':
- return Dimoco::from($data);
+ return Dimoco::from($data, $metadata);
case 'Directa24':
- return Directa24::from($data);
+ return Directa24::from($data, $metadata);
case 'dLocal':
- return DLocal::from($data);
+ return DLocal::from($data, $metadata);
case 'Dragonphoenix':
- return Dragonphoenix::from($data);
+ return Dragonphoenix::from($data, $metadata);
case 'Dropayment':
- return Dropayment::from($data);
+ return Dropayment::from($data, $metadata);
case 'EasyPayDirect':
- return EasyPayDirect::from($data);
+ return EasyPayDirect::from($data, $metadata);
case 'EBANX':
- return EBANX::from($data);
+ return EBANX::from($data, $metadata);
case 'ecoPayz':
- return EcoPayz::from($data);
+ return EcoPayz::from($data, $metadata);
case 'ecoPayzTurkey':
- return EcoPayzTurkey::from($data);
+ return EcoPayzTurkey::from($data, $metadata);
case 'EcorePay':
- return EcorePay::from($data);
+ return EcorePay::from($data, $metadata);
case 'Elavon':
- return Elavon::from($data);
+ return Elavon::from($data, $metadata);
case 'eMerchantPay':
- return EMerchantPay::from($data);
+ return EMerchantPay::from($data, $metadata);
case 'EMS':
- return EMS::from($data);
+ return EMS::from($data, $metadata);
case 'ePay':
- return EPay::from($data);
+ return EPay::from($data, $metadata);
case 'EPG':
- return EPG::from($data);
+ return EPG::from($data, $metadata);
case 'EPro':
- return EPro::from($data);
+ return EPro::from($data, $metadata);
case 'Euteller':
- return Euteller::from($data);
+ return Euteller::from($data, $metadata);
case 'Ezeebill':
- return Ezeebill::from($data);
+ return Ezeebill::from($data, $metadata);
case 'eZeeWallet':
- return EZeeWallet::from($data);
+ return EZeeWallet::from($data, $metadata);
case 'ezyEFT':
- return EzyEFT::from($data);
+ return EzyEFT::from($data, $metadata);
case 'Finrax':
- return Finrax::from($data);
+ return Finrax::from($data, $metadata);
case 'FinTecSystems':
- return FinTecSystems::from($data);
+ return FinTecSystems::from($data, $metadata);
case 'Flexepin':
- return Flexepin::from($data);
+ return Flexepin::from($data, $metadata);
case 'Forte':
- return Forte::from($data);
+ return Forte::from($data, $metadata);
case 'FundSend':
- return FundSend::from($data);
+ return FundSend::from($data, $metadata);
case 'gate2way':
- return Gate2way::from($data);
+ return Gate2way::from($data, $metadata);
case 'GET':
- return GET::from($data);
+ return GET::from($data, $metadata);
case 'Gigadat':
- return Gigadat::from($data);
+ return Gigadat::from($data, $metadata);
case 'GlobalOne':
- return GlobalOne::from($data);
+ return GlobalOne::from($data, $metadata);
case 'GoCardless':
- return GoCardless::from($data);
+ return GoCardless::from($data, $metadata);
case 'Gooney':
- return Gooney::from($data);
+ return Gooney::from($data, $metadata);
case 'Gpaysafe':
- return Gpaysafe::from($data);
+ return Gpaysafe::from($data, $metadata);
case 'Greenbox':
- return Greenbox::from($data);
+ return Greenbox::from($data, $metadata);
case 'HiPay':
- return HiPay::from($data);
+ return HiPay::from($data, $metadata);
case 'iCanPay':
- return ICanPay::from($data);
+ return ICanPay::from($data, $metadata);
case 'iCashOne':
- return ICashOne::from($data);
+ return ICashOne::from($data, $metadata);
case 'ICEPAY':
- return ICEPAY::from($data);
+ return ICEPAY::from($data, $metadata);
case 'iCheque':
- return ICheque::from($data);
+ return ICheque::from($data, $metadata);
case 'iDebit':
- return IDebit::from($data);
+ return IDebit::from($data, $metadata);
case 'Ilixium':
- return Ilixium::from($data);
+ return Ilixium::from($data, $metadata);
case 'Ingenico':
- return Ingenico::from($data);
+ return Ingenico::from($data, $metadata);
case 'INOVAPAY':
- return INOVAPAY::from($data);
+ return INOVAPAY::from($data, $metadata);
case 'Inovio':
- return Inovio::from($data);
+ return Inovio::from($data, $metadata);
case 'InstaDebit':
- return InstaDebit::from($data);
+ return InstaDebit::from($data, $metadata);
case 'Intuit':
- return Intuit::from($data);
+ return Intuit::from($data, $metadata);
case 'IpayOptions':
- return IpayOptions::from($data);
+ return IpayOptions::from($data, $metadata);
case 'Jeton':
- return Jeton::from($data);
+ return Jeton::from($data, $metadata);
case 'JetPay':
- return JetPay::from($data);
+ return JetPay::from($data, $metadata);
case 'JPMOrbital':
- return JPMOrbital::from($data);
+ return JPMOrbital::from($data, $metadata);
case 'Khelocard':
- return Khelocard::from($data);
+ return Khelocard::from($data, $metadata);
case 'Klarna':
- return Klarna::from($data);
+ return Klarna::from($data, $metadata);
case 'Konnektive':
- return Konnektive::from($data);
+ return Konnektive::from($data, $metadata);
case 'Kushki':
- return Kushki::from($data);
+ return Kushki::from($data, $metadata);
case 'LaCore':
- return LaCore::from($data);
+ return LaCore::from($data, $metadata);
case 'Limepay':
- return Limepay::from($data);
+ return Limepay::from($data, $metadata);
case 'loonie':
- return Loonie::from($data);
+ return Loonie::from($data, $metadata);
case 'Loonio':
- return Loonio::from($data);
+ return Loonio::from($data, $metadata);
case 'LPG':
- return LPG::from($data);
+ return LPG::from($data, $metadata);
case 'MaxiCash':
- return MaxiCash::from($data);
+ return MaxiCash::from($data, $metadata);
case 'MercadoPago':
- return MercadoPago::from($data);
+ return MercadoPago::from($data, $metadata);
case 'MiFinity':
- return MiFinity::from($data);
+ return MiFinity::from($data, $metadata);
case 'MobilePay':
- return MobilePay::from($data);
+ return MobilePay::from($data, $metadata);
case 'Moneris':
- return Moneris::from($data);
+ return Moneris::from($data, $metadata);
case 'Monolo':
- return Monolo::from($data);
+ return Monolo::from($data, $metadata);
case 'MonRem':
- return MonRem::from($data);
+ return MonRem::from($data, $metadata);
case 'MtaPay':
- return MtaPay::from($data);
+ return MtaPay::from($data, $metadata);
case 'MuchBetter':
- return MuchBetter::from($data);
+ return MuchBetter::from($data, $metadata);
case 'MuchBetterGateway':
- return MuchBetterGateway::from($data);
+ return MuchBetterGateway::from($data, $metadata);
case 'MyFatoorah':
- return MyFatoorah::from($data);
+ return MyFatoorah::from($data, $metadata);
case 'Naewe':
- return Naewe::from($data);
+ return Naewe::from($data, $metadata);
case 'Neosurf':
- return Neosurf::from($data);
+ return Neosurf::from($data, $metadata);
case 'Netbanking':
- return Netbanking::from($data);
+ return Netbanking::from($data, $metadata);
case 'Neteller':
- return Neteller::from($data);
+ return Neteller::from($data, $metadata);
case 'NGenius':
- return NGenius::from($data);
+ return NGenius::from($data, $metadata);
case 'NinjaWallet':
- return NinjaWallet::from($data);
+ return NinjaWallet::from($data, $metadata);
case 'NMI':
- return NMI::from($data);
+ return NMI::from($data, $metadata);
case 'NordikCoin':
- return NordikCoin::from($data);
+ return NordikCoin::from($data, $metadata);
case 'NOWPayments':
- return NOWPayments::from($data);
+ return NOWPayments::from($data, $metadata);
case 'NuaPay':
- return NuaPay::from($data);
+ return NuaPay::from($data, $metadata);
case 'OchaPay':
- return OchaPay::from($data);
+ return OchaPay::from($data, $metadata);
case 'OmniMatrix':
- return OmniMatrix::from($data);
+ return OmniMatrix::from($data, $metadata);
case 'Onlineueberweisen':
- return Onlineueberweisen::from($data);
+ return Onlineueberweisen::from($data, $metadata);
case 'OnRamp':
- return OnRamp::from($data);
+ return OnRamp::from($data, $metadata);
case 'Orbital':
- return Orbital::from($data);
+ return Orbital::from($data, $metadata);
case 'Pagadito':
- return Pagadito::from($data);
+ return Pagadito::from($data, $metadata);
case 'Pagsmile':
- return Pagsmile::from($data);
+ return Pagsmile::from($data, $metadata);
case 'Panamerican':
- return Panamerican::from($data);
+ return Panamerican::from($data, $metadata);
case 'PandaGateway':
- return PandaGateway::from($data);
+ return PandaGateway::from($data, $metadata);
case 'ParamountCommerce':
- return ParamountCommerce::from($data);
+ return ParamountCommerce::from($data, $metadata);
case 'ParamountEft':
- return ParamountEft::from($data);
+ return ParamountEft::from($data, $metadata);
case 'ParamountInterac':
- return ParamountInterac::from($data);
+ return ParamountInterac::from($data, $metadata);
case 'Pay4Fun':
- return Pay4Fun::from($data);
+ return Pay4Fun::from($data, $metadata);
case 'Paybilt':
- return Paybilt::from($data);
+ return Paybilt::from($data, $metadata);
case 'PayCash':
- return PayCash::from($data);
+ return PayCash::from($data, $metadata);
case 'PayClub':
- return PayClub::from($data);
+ return PayClub::from($data, $metadata);
case 'Paycly':
- return Paycly::from($data);
+ return Paycly::from($data, $metadata);
case 'PayCom':
- return PayCom::from($data);
+ return PayCom::from($data, $metadata);
case 'PayEcards':
- return PayEcards::from($data);
+ return PayEcards::from($data, $metadata);
case 'Payeezy':
- return Payeezy::from($data);
+ return Payeezy::from($data, $metadata);
case 'Payflow':
- return Payflow::from($data);
+ return Payflow::from($data, $metadata);
case 'PaymentAsia':
- return PaymentAsia::from($data);
+ return PaymentAsia::from($data, $metadata);
case 'PaymenTechnologies':
- return PaymenTechnologies::from($data);
+ return PaymenTechnologies::from($data, $metadata);
case 'PaymentsOS':
- return PaymentsOS::from($data);
+ return PaymentsOS::from($data, $metadata);
case 'Paymero':
- return Paymero::from($data);
+ return Paymero::from($data, $metadata);
case 'Paynote':
- return Paynote::from($data);
+ return Paynote::from($data, $metadata);
case 'PayPal':
- return PayPal::from($data);
+ return PayPal::from($data, $metadata);
case 'Payper':
- return Payper::from($data);
+ return Payper::from($data, $metadata);
case 'Payr':
- return Payr::from($data);
+ return Payr::from($data, $metadata);
case 'PayRedeem':
- return PayRedeem::from($data);
+ return PayRedeem::from($data, $metadata);
case 'PayRetailers':
- return PayRetailers::from($data);
+ return PayRetailers::from($data, $metadata);
case 'Paysafe':
- return Paysafe::from($data);
+ return Paysafe::from($data, $metadata);
case 'Paysafecard':
- return Paysafecard::from($data);
+ return Paysafecard::from($data, $metadata);
case 'Paysafecash':
- return Paysafecash::from($data);
+ return Paysafecash::from($data, $metadata);
case 'PayTabs':
- return PayTabs::from($data);
+ return PayTabs::from($data, $metadata);
case 'PayU':
- return PayU::from($data);
+ return PayU::from($data, $metadata);
case 'PayULatam':
- return PayULatam::from($data);
+ return PayULatam::from($data, $metadata);
case 'Payvision':
- return Payvision::from($data);
+ return Payvision::from($data, $metadata);
case 'PharosPayments':
- return PharosPayments::from($data);
+ return PharosPayments::from($data, $metadata);
case 'Piastrix':
- return Piastrix::from($data);
+ return Piastrix::from($data, $metadata);
case 'Pin4Pay':
- return Pin4Pay::from($data);
+ return Pin4Pay::from($data, $metadata);
case 'Plugnpay':
- return Plugnpay::from($data);
+ return Plugnpay::from($data, $metadata);
case 'PostFinance':
- return PostFinance::from($data);
+ return PostFinance::from($data, $metadata);
case 'Powertranz':
- return Powertranz::from($data);
+ return Powertranz::from($data, $metadata);
case 'PPRO':
- return PPRO::from($data);
+ return PPRO::from($data, $metadata);
case 'Prosa':
- return Prosa::from($data);
+ return Prosa::from($data, $metadata);
case 'PSiGate':
- return PSiGate::from($data);
+ return PSiGate::from($data, $metadata);
case 'Rapyd':
- return Rapyd::from($data);
+ return Rapyd::from($data, $metadata);
case 'Realex':
- return Realex::from($data);
+ return Realex::from($data, $metadata);
case 'Realtime':
- return Realtime::from($data);
+ return Realtime::from($data, $metadata);
case 'Redsys':
- return Redsys::from($data);
+ return Redsys::from($data, $metadata);
case 'Rotessa':
- return Rotessa::from($data);
+ return Rotessa::from($data, $metadata);
case 'RPN':
- return RPN::from($data);
+ return RPN::from($data, $metadata);
case 'Safecharge':
- return Safecharge::from($data);
+ return Safecharge::from($data, $metadata);
case 'Sagepay':
- return Sagepay::from($data);
+ return Sagepay::from($data, $metadata);
case 'SaltarPay':
- return SaltarPay::from($data);
+ return SaltarPay::from($data, $metadata);
case 'SeamlessChex':
- return SeamlessChex::from($data);
+ return SeamlessChex::from($data, $metadata);
case 'SecureTrading':
- return SecureTrading::from($data);
+ return SecureTrading::from($data, $metadata);
case 'SecurionPay':
- return SecurionPay::from($data);
+ return SecurionPay::from($data, $metadata);
case 'Skrill':
- return Skrill::from($data);
+ return Skrill::from($data, $metadata);
case 'SmartInvoice':
- return SmartInvoice::from($data);
+ return SmartInvoice::from($data, $metadata);
case 'SMSVoucher':
- return SMSVoucher::from($data);
+ return SMSVoucher::from($data, $metadata);
case 'Sofort':
- return Sofort::from($data);
+ return Sofort::from($data, $metadata);
case 'SparkPay':
- return SparkPay::from($data);
+ return SparkPay::from($data, $metadata);
case 'Splitit':
- return Splitit::from($data);
+ return Splitit::from($data, $metadata);
case 'StaticGateway':
- return StaticGateway::from($data);
+ return StaticGateway::from($data, $metadata);
case 'STPMexico':
- return STPMexico::from($data);
+ return STPMexico::from($data, $metadata);
case 'Stripe':
- return Stripe::from($data);
+ return Stripe::from($data, $metadata);
case 'Tabby':
- return Tabby::from($data);
+ return Tabby::from($data, $metadata);
case 'Telr':
- return Telr::from($data);
+ return Telr::from($data, $metadata);
case 'TestProcessor':
- return TestProcessor::from($data);
+ return TestProcessor::from($data, $metadata);
case 'ToditoCash':
- return ToditoCash::from($data);
+ return ToditoCash::from($data, $metadata);
case 'Triple000':
- return Triple000::from($data);
+ return Triple000::from($data, $metadata);
case 'Truevo':
- return Truevo::from($data);
+ return Truevo::from($data, $metadata);
case 'Trustly':
- return Trustly::from($data);
+ return Trustly::from($data, $metadata);
case 'TrustsPay':
- return TrustsPay::from($data);
+ return TrustsPay::from($data, $metadata);
case 'TWINT':
- return TWINT::from($data);
+ return TWINT::from($data, $metadata);
case 'Unlimit':
- return Unlimit::from($data);
+ return Unlimit::from($data, $metadata);
case 'UPayCard':
- return UPayCard::from($data);
+ return UPayCard::from($data, $metadata);
case 'USAePay':
- return USAePay::from($data);
+ return USAePay::from($data, $metadata);
case 'VantivLitle':
- return VantivLitle::from($data);
+ return VantivLitle::from($data, $metadata);
case 'VCreditos':
- return VCreditos::from($data);
+ return VCreditos::from($data, $metadata);
case 'vegaaH':
- return VegaaH::from($data);
+ return VegaaH::from($data, $metadata);
case 'VegaWallet':
- return VegaWallet::from($data);
+ return VegaWallet::from($data, $metadata);
+ case 'Viva':
+ return Viva::from($data, $metadata);
case 'Wallet88':
- return Wallet88::from($data);
+ return Wallet88::from($data, $metadata);
case 'Walpay':
- return Walpay::from($data);
+ return Walpay::from($data, $metadata);
case 'WesternUnion':
- return WesternUnion::from($data);
+ return WesternUnion::from($data, $metadata);
case 'Wirecard':
- return Wirecard::from($data);
+ return Wirecard::from($data, $metadata);
case 'WorldlineAtosFrankfurt':
- return WorldlineAtosFrankfurt::from($data);
+ return WorldlineAtosFrankfurt::from($data, $metadata);
case 'Worldpay':
- return Worldpay::from($data);
+ return Worldpay::from($data, $metadata);
case 'XPay':
- return XPay::from($data);
+ return XPay::from($data, $metadata);
case 'Zimpler':
- return Zimpler::from($data);
+ return Zimpler::from($data, $metadata);
case 'Zotapay':
- return Zotapay::from($data);
+ return Zotapay::from($data, $metadata);
}
throw new InvalidArgumentException("Unsupported gatewayName value: '{$data['gatewayName']}'");
diff --git a/src/Model/GatewayAccountDowntimeSchedule.php b/src/Model/GatewayAccountDowntimeSchedule.php
index c3caf125e..120ee5a9e 100644
--- a/src/Model/GatewayAccountDowntimeSchedule.php
+++ b/src/Model/GatewayAccountDowntimeSchedule.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GatewayAccountDowntimeSchedule implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_ONGOING = 'ongoing';
@@ -34,7 +37,7 @@ class GatewayAccountDowntimeSchedule implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -60,11 +63,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/GatewayAccountFinancialSettings.php b/src/Model/GatewayAccountFinancialSettings.php
index c377ee629..29818e460 100644
--- a/src/Model/GatewayAccountFinancialSettings.php
+++ b/src/Model/GatewayAccountFinancialSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GatewayAccountFinancialSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('settlementSettings', $data)) {
$this->setSettlementSettings($data['settlementSettings']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('riskReserveSettings', $data)) {
$this->setRiskReserveSettings($data['riskReserveSettings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSettlementSettings(): SettlementSettings
diff --git a/src/Model/GatewayAccountFinancialSettingsRiskReserveSettings.php b/src/Model/GatewayAccountFinancialSettingsRiskReserveSettings.php
index d9fca629a..8e97b7139 100644
--- a/src/Model/GatewayAccountFinancialSettingsRiskReserveSettings.php
+++ b/src/Model/GatewayAccountFinancialSettingsRiskReserveSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GatewayAccountFinancialSettingsRiskReserveSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('filter', $data)) {
$this->setFilter($data['filter']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('period', $data)) {
$this->setPeriod($data['period']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFilter(): string
diff --git a/src/Model/GatewayAccountLimit.php b/src/Model/GatewayAccountLimit.php
index 3a0e3ac2d..7afbd90f0 100644
--- a/src/Model/GatewayAccountLimit.php
+++ b/src/Model/GatewayAccountLimit.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GatewayAccountLimit implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_MONITORING = 'monitoring';
public const STATUS_REACHED = 'reached';
@@ -34,7 +37,7 @@ class GatewayAccountLimit implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -69,11 +72,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/GatewayAccountPickInstruction.php b/src/Model/GatewayAccountPickInstruction.php
index 7b7c865f8..13a44f6fc 100644
--- a/src/Model/GatewayAccountPickInstruction.php
+++ b/src/Model/GatewayAccountPickInstruction.php
@@ -16,9 +16,12 @@
use InvalidArgumentException;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
abstract class GatewayAccountPickInstruction implements JsonSerializable
{
+ use HasMetadata;
+
public const STRATEGY_WEIGHTED_RANDOM = 'weighted-random';
public const STRATEGY_ROUND_ROBIN = 'round-robin';
@@ -29,7 +32,7 @@ abstract class GatewayAccountPickInstruction implements JsonSerializable
private array $fields = [];
- protected function __construct(array $data = [])
+ protected function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('strategy', $data)) {
$this->setStrategy($data['strategy']);
@@ -37,15 +40,16 @@ protected function __construct(array $data = [])
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
switch ($data['method']) {
case 'gateway-account-weights':
- return PickInstructionGatewayAccountWeights::from($data);
+ return PickInstructionGatewayAccountWeights::from($data, $metadata);
case 'gateway-acquirer-weights':
- return PickInstructionGatewayAcquirerWeights::from($data);
+ return PickInstructionGatewayAcquirerWeights::from($data, $metadata);
}
throw new InvalidArgumentException("Unsupported method value: '{$data['method']}'");
diff --git a/src/Model/GatewayAccountTimeline.php b/src/Model/GatewayAccountTimeline.php
index 8382aedf0..2443348f6 100644
--- a/src/Model/GatewayAccountTimeline.php
+++ b/src/Model/GatewayAccountTimeline.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GatewayAccountTimeline implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_CREATED = 'gateway-account-created';
public const TYPE_CHANGED = 'gateway-account-changed';
@@ -50,7 +53,7 @@ class GatewayAccountTimeline implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -73,11 +76,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/GetKycAcceptanceSummaryReportResponse.php b/src/Model/GetKycAcceptanceSummaryReportResponse.php
index dafd8bbfe..c50af0da0 100644
--- a/src/Model/GetKycAcceptanceSummaryReportResponse.php
+++ b/src/Model/GetKycAcceptanceSummaryReportResponse.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetKycAcceptanceSummaryReportResponse implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/GetKycAcceptanceSummaryReportResponseData.php b/src/Model/GetKycAcceptanceSummaryReportResponseData.php
index d3c5a882d..d1a4316eb 100644
--- a/src/Model/GetKycAcceptanceSummaryReportResponseData.php
+++ b/src/Model/GetKycAcceptanceSummaryReportResponseData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetKycAcceptanceSummaryReportResponseData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('documentType', $data)) {
$this->setDocumentType($data['documentType']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('manualReviewTime', $data)) {
$this->setManualReviewTime($data['manualReviewTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDocumentType(): ?GetKycAcceptanceSummaryReportResponseDataDocumentType
diff --git a/src/Model/GetKycAcceptanceSummaryReportResponseDataDocumentType.php b/src/Model/GetKycAcceptanceSummaryReportResponseDataDocumentType.php
index f966dd724..a6db6c0c6 100644
--- a/src/Model/GetKycAcceptanceSummaryReportResponseDataDocumentType.php
+++ b/src/Model/GetKycAcceptanceSummaryReportResponseDataDocumentType.php
@@ -15,16 +15,20 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetKycAcceptanceSummaryReportResponseDataDocumentType implements JsonSerializable
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function jsonSerialize(): array
diff --git a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatistics.php b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatistics.php
index e520aaa58..2cef5cdb1 100644
--- a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatistics.php
+++ b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatistics.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetKycAcceptanceSummaryReportResponseDataStatusStatistics implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accepted', $data)) {
$this->setAccepted($data['accepted']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('archived', $data)) {
$this->setArchived($data['archived']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccepted(): ?GetKycAcceptanceSummaryReportResponseDataStatusStatisticsAccepted
diff --git a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsAccepted.php b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsAccepted.php
index caeb03e4b..4b11c75ce 100644
--- a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsAccepted.php
+++ b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsAccepted.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetKycAcceptanceSummaryReportResponseDataStatusStatisticsAccepted implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('total', $data)) {
$this->setTotal($data['total']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('afterAutoRejected', $data)) {
$this->setAfterAutoRejected($data['afterAutoRejected']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTotal(): ?int
diff --git a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsArchived.php b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsArchived.php
index 928198321..b0e74c5a9 100644
--- a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsArchived.php
+++ b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsArchived.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetKycAcceptanceSummaryReportResponseDataStatusStatisticsArchived implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('total', $data)) {
$this->setTotal($data['total']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTotal(): ?int
diff --git a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsPending.php b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsPending.php
index 2b59275f3..eae8037a7 100644
--- a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsPending.php
+++ b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsPending.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetKycAcceptanceSummaryReportResponseDataStatusStatisticsPending implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('total', $data)) {
$this->setTotal($data['total']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTotal(): ?int
diff --git a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsRejected.php b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsRejected.php
index 77eb51125..180f1c233 100644
--- a/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsRejected.php
+++ b/src/Model/GetKycAcceptanceSummaryReportResponseDataStatusStatisticsRejected.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetKycAcceptanceSummaryReportResponseDataStatusStatisticsRejected implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('total', $data)) {
$this->setTotal($data['total']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('afterAutoAccepted', $data)) {
$this->setAfterAutoAccepted($data['afterAutoAccepted']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTotal(): ?int
diff --git a/src/Model/GetPaymentCardBankNameCollectionResponse.php b/src/Model/GetPaymentCardBankNameCollectionResponse.php
index bd47d5a4e..337ac58dc 100644
--- a/src/Model/GetPaymentCardBankNameCollectionResponse.php
+++ b/src/Model/GetPaymentCardBankNameCollectionResponse.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetPaymentCardBankNameCollectionResponse implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/GetPayoutRequestBatchPreviewResponse.php b/src/Model/GetPayoutRequestBatchPreviewResponse.php
new file mode 100644
index 000000000..60d885e76
--- /dev/null
+++ b/src/Model/GetPayoutRequestBatchPreviewResponse.php
@@ -0,0 +1,112 @@
+setMatchingCount($data['matchingCount']);
+ }
+ if (array_key_exists('customerCount', $data)) {
+ $this->setCustomerCount($data['customerCount']);
+ }
+ if (array_key_exists('totalAmountByCurrency', $data)) {
+ $this->setTotalAmountByCurrency($data['totalAmountByCurrency']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getMatchingCount(): ?int
+ {
+ return $this->fields['matchingCount'] ?? null;
+ }
+
+ public function setMatchingCount(null|int $matchingCount): static
+ {
+ $this->fields['matchingCount'] = $matchingCount;
+
+ return $this;
+ }
+
+ public function getCustomerCount(): ?int
+ {
+ return $this->fields['customerCount'] ?? null;
+ }
+
+ public function setCustomerCount(null|int $customerCount): static
+ {
+ $this->fields['customerCount'] = $customerCount;
+
+ return $this;
+ }
+
+ /**
+ * @return null|GetPayoutRequestBatchPreviewResponseTotalAmountByCurrency[]
+ */
+ public function getTotalAmountByCurrency(): ?array
+ {
+ return $this->fields['totalAmountByCurrency'] ?? null;
+ }
+
+ /**
+ * @param null|array[]|GetPayoutRequestBatchPreviewResponseTotalAmountByCurrency[] $totalAmountByCurrency
+ */
+ public function setTotalAmountByCurrency(null|array $totalAmountByCurrency): static
+ {
+ $totalAmountByCurrency = $totalAmountByCurrency !== null ? array_map(
+ fn ($value) => $value instanceof GetPayoutRequestBatchPreviewResponseTotalAmountByCurrency ? $value : GetPayoutRequestBatchPreviewResponseTotalAmountByCurrency::from($value),
+ $totalAmountByCurrency,
+ ) : null;
+
+ $this->fields['totalAmountByCurrency'] = $totalAmountByCurrency;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('matchingCount', $this->fields)) {
+ $data['matchingCount'] = $this->fields['matchingCount'];
+ }
+ if (array_key_exists('customerCount', $this->fields)) {
+ $data['customerCount'] = $this->fields['customerCount'];
+ }
+ if (array_key_exists('totalAmountByCurrency', $this->fields)) {
+ $data['totalAmountByCurrency'] = $this->fields['totalAmountByCurrency'] !== null
+ ? array_map(
+ static fn (GetPayoutRequestBatchPreviewResponseTotalAmountByCurrency $getPayoutRequestBatchPreviewResponseTotalAmountByCurrency) => $getPayoutRequestBatchPreviewResponseTotalAmountByCurrency->jsonSerialize(),
+ $this->fields['totalAmountByCurrency'],
+ )
+ : null;
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/GetPayoutRequestBatchPreviewResponseTotalAmountByCurrency.php b/src/Model/GetPayoutRequestBatchPreviewResponseTotalAmountByCurrency.php
new file mode 100644
index 000000000..65ed6f80a
--- /dev/null
+++ b/src/Model/GetPayoutRequestBatchPreviewResponseTotalAmountByCurrency.php
@@ -0,0 +1,82 @@
+setCurrency($data['currency']);
+ }
+ if (array_key_exists('amount', $data)) {
+ $this->setAmount($data['amount']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getCurrency(): string
+ {
+ return $this->fields['currency'];
+ }
+
+ public function setCurrency(string $currency): static
+ {
+ $this->fields['currency'] = $currency;
+
+ return $this;
+ }
+
+ public function getAmount(): float
+ {
+ return $this->fields['amount'];
+ }
+
+ public function setAmount(float|string $amount): static
+ {
+ if (is_string($amount)) {
+ $amount = (float) $amount;
+ }
+
+ $this->fields['amount'] = $amount;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('currency', $this->fields)) {
+ $data['currency'] = $this->fields['currency'];
+ }
+ if (array_key_exists('amount', $this->fields)) {
+ $data['amount'] = $this->fields['amount'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/GetPayoutRequestPaymentInstrumentsResponse.php b/src/Model/GetPayoutRequestPaymentInstrumentsResponse.php
index 56256698a..cf310828e 100644
--- a/src/Model/GetPayoutRequestPaymentInstrumentsResponse.php
+++ b/src/Model/GetPayoutRequestPaymentInstrumentsResponse.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetPayoutRequestPaymentInstrumentsResponse implements JsonSerializable
{
+ use HasMetadata;
+
public const GATEWAY_NAME_A1_GATEWAY = 'A1Gateway';
public const GATEWAY_NAME_ACI = 'ACI';
@@ -448,6 +451,8 @@ class GetPayoutRequestPaymentInstrumentsResponse implements JsonSerializable
public const GATEWAY_NAME_VEGA_WALLET = 'VegaWallet';
+ public const GATEWAY_NAME_VIVA = 'Viva';
+
public const GATEWAY_NAME_WALLET88 = 'Wallet88';
public const GATEWAY_NAME_WALPAY = 'Walpay';
@@ -468,7 +473,7 @@ class GetPayoutRequestPaymentInstrumentsResponse implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentInstrumentId', $data)) {
$this->setPaymentInstrumentId($data['paymentInstrumentId']);
@@ -488,11 +493,12 @@ public function __construct(array $data = [])
if (array_key_exists('lastPayoutTime', $data)) {
$this->setLastPayoutTime($data['lastPayoutTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentInstrumentId(): ?string
diff --git a/src/Model/GetPayoutRequestV2PaymentInstrumentsResponse.php b/src/Model/GetPayoutRequestV2PaymentInstrumentsResponse.php
index c39761661..f319e4e61 100644
--- a/src/Model/GetPayoutRequestV2PaymentInstrumentsResponse.php
+++ b/src/Model/GetPayoutRequestV2PaymentInstrumentsResponse.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GetPayoutRequestV2PaymentInstrumentsResponse implements JsonSerializable
{
+ use HasMetadata;
+
public const GATEWAY_NAME_A1_GATEWAY = 'A1Gateway';
public const GATEWAY_NAME_ACI = 'ACI';
@@ -448,6 +451,8 @@ class GetPayoutRequestV2PaymentInstrumentsResponse implements JsonSerializable
public const GATEWAY_NAME_VEGA_WALLET = 'VegaWallet';
+ public const GATEWAY_NAME_VIVA = 'Viva';
+
public const GATEWAY_NAME_WALLET88 = 'Wallet88';
public const GATEWAY_NAME_WALPAY = 'Walpay';
@@ -466,9 +471,17 @@ class GetPayoutRequestV2PaymentInstrumentsResponse implements JsonSerializable
public const GATEWAY_NAME_ZOTAPAY = 'Zotapay';
+ public const GATEWAY_PAYOUT_INSTRUCTION_ALL = 'all';
+
+ public const GATEWAY_PAYOUT_INSTRUCTION_COVERED_PAYOUT = 'covered-payout';
+
+ public const GATEWAY_PAYOUT_INSTRUCTION_APPROVED_PAYMENT = 'approved-payment';
+
+ public const GATEWAY_PAYOUT_INSTRUCTION_NONE = 'none';
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentInstrumentId', $data)) {
$this->setPaymentInstrumentId($data['paymentInstrumentId']);
@@ -479,6 +492,9 @@ public function __construct(array $data = [])
if (array_key_exists('gatewayAccountId', $data)) {
$this->setGatewayAccountId($data['gatewayAccountId']);
}
+ if (array_key_exists('gatewayPayoutInstruction', $data)) {
+ $this->setGatewayPayoutInstruction($data['gatewayPayoutInstruction']);
+ }
if (array_key_exists('exposureAmount', $data)) {
$this->setExposureAmount($data['exposureAmount']);
}
@@ -491,11 +507,12 @@ public function __construct(array $data = [])
if (array_key_exists('lastPayoutTime', $data)) {
$this->setLastPayoutTime($data['lastPayoutTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentInstrumentId(): ?string
@@ -534,6 +551,18 @@ public function setGatewayAccountId(null|string $gatewayAccountId): static
return $this;
}
+ public function getGatewayPayoutInstruction(): ?string
+ {
+ return $this->fields['gatewayPayoutInstruction'] ?? null;
+ }
+
+ public function setGatewayPayoutInstruction(null|string $gatewayPayoutInstruction): static
+ {
+ $this->fields['gatewayPayoutInstruction'] = $gatewayPayoutInstruction;
+
+ return $this;
+ }
+
public function getExposureAmount(): ?float
{
return $this->fields['exposureAmount'] ?? null;
@@ -610,6 +639,9 @@ public function jsonSerialize(): array
if (array_key_exists('gatewayAccountId', $this->fields)) {
$data['gatewayAccountId'] = $this->fields['gatewayAccountId'];
}
+ if (array_key_exists('gatewayPayoutInstruction', $this->fields)) {
+ $data['gatewayPayoutInstruction'] = $this->fields['gatewayPayoutInstruction'];
+ }
if (array_key_exists('exposureAmount', $this->fields)) {
$data['exposureAmount'] = $this->fields['exposureAmount'];
}
diff --git a/src/Model/Gigadat.php b/src/Model/Gigadat.php
index 3da132baa..6e6a6d8a7 100644
--- a/src/Model/Gigadat.php
+++ b/src/Model/Gigadat.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Gigadat extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Gigadat',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): GigadatCredentials
diff --git a/src/Model/GigadatCredentials.php b/src/Model/GigadatCredentials.php
index 1d34f921f..fbd8104eb 100644
--- a/src/Model/GigadatCredentials.php
+++ b/src/Model/GigadatCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GigadatCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('campaignId', $data)) {
$this->setCampaignId($data['campaignId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('securityToken', $data)) {
$this->setSecurityToken($data['securityToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCampaignId(): string
diff --git a/src/Model/GigadatSettings.php b/src/Model/GigadatSettings.php
index 841483912..370c05209 100644
--- a/src/Model/GigadatSettings.php
+++ b/src/Model/GigadatSettings.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GigadatSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const METHOD_TYPE_CPI = 'CPI';
public const METHOD_TYPE_ETI = 'ETI';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sandbox', $data)) {
$this->setSandbox($data['sandbox']);
@@ -41,11 +44,12 @@ public function __construct(array $data = [])
if (array_key_exists('bypassAutodepositLookup', $data)) {
$this->setBypassAutodepositLookup($data['bypassAutodepositLookup']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSandbox(): bool
diff --git a/src/Model/GlobalOne.php b/src/Model/GlobalOne.php
index c3b802d1b..5cf59af2a 100644
--- a/src/Model/GlobalOne.php
+++ b/src/Model/GlobalOne.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class GlobalOne extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'GlobalOne',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): GlobalOneCredentials
diff --git a/src/Model/GlobalOneCredentials.php b/src/Model/GlobalOneCredentials.php
index 866ddd552..5665568cc 100644
--- a/src/Model/GlobalOneCredentials.php
+++ b/src/Model/GlobalOneCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GlobalOneCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('terminalId', $data)) {
$this->setTerminalId($data['terminalId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('sharedSecret', $data)) {
$this->setSharedSecret($data['sharedSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTerminalId(): string
diff --git a/src/Model/GlobalWebhook.php b/src/Model/GlobalWebhook.php
index 5d5c6ea52..cb01fd4d0 100644
--- a/src/Model/GlobalWebhook.php
+++ b/src/Model/GlobalWebhook.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GlobalWebhook implements JsonSerializable
{
+ use HasMetadata;
+
public const EVENTS_FILTER_AML_LIST_POSSIBLY_MATCHED = 'aml-list-possibly-matched';
public const EVENTS_FILTER_AUTODEPOSIT_LOOKUP_PERFORMED = 'autodeposit-lookup-performed';
@@ -178,7 +181,7 @@ class GlobalWebhook implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -216,11 +219,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/GlobalWebhookHeaders.php b/src/Model/GlobalWebhookHeaders.php
index 1866ffc9c..b3a7779cb 100644
--- a/src/Model/GlobalWebhookHeaders.php
+++ b/src/Model/GlobalWebhookHeaders.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GlobalWebhookHeaders implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -35,11 +38,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/GoCardless.php b/src/Model/GoCardless.php
index cf80cc3ea..f60db586b 100644
--- a/src/Model/GoCardless.php
+++ b/src/Model/GoCardless.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class GoCardless extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'GoCardless',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): GoCardlessCredentials
diff --git a/src/Model/GoCardlessCredentials.php b/src/Model/GoCardlessCredentials.php
index 22c9d0eba..433f4c8c3 100644
--- a/src/Model/GoCardlessCredentials.php
+++ b/src/Model/GoCardlessCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GoCardlessCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/GooglePayFeature.php b/src/Model/GooglePayFeature.php
index 94db87cf5..a8714cb42 100644
--- a/src/Model/GooglePayFeature.php
+++ b/src/Model/GooglePayFeature.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class GooglePayFeature implements PaymentCardFeature
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantName', $data)) {
$this->setMerchantName($data['merchantName']);
@@ -29,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('country', $data)) {
$this->setCountry($data['country']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/GoogleSpreadsheet.php b/src/Model/GoogleSpreadsheet.php
index 4806839b2..ddb2319b6 100644
--- a/src/Model/GoogleSpreadsheet.php
+++ b/src/Model/GoogleSpreadsheet.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GoogleSpreadsheet implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/Gooney.php b/src/Model/Gooney.php
index bfab75e67..b59baaa23 100644
--- a/src/Model/Gooney.php
+++ b/src/Model/Gooney.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Gooney extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Gooney',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): GooneyCredentials
diff --git a/src/Model/GooneyCredentials.php b/src/Model/GooneyCredentials.php
index 9b036acda..5527da565 100644
--- a/src/Model/GooneyCredentials.php
+++ b/src/Model/GooneyCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GooneyCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiUser', $data)) {
$this->setApiUser($data['apiUser']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecret', $data)) {
$this->setApiSecret($data['apiSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiUser(): string
diff --git a/src/Model/Gpaysafe.php b/src/Model/Gpaysafe.php
index fc707d625..c8f63fb26 100644
--- a/src/Model/Gpaysafe.php
+++ b/src/Model/Gpaysafe.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Gpaysafe extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Gpaysafe',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): GpaysafeCredentials
diff --git a/src/Model/GpaysafeCredentials.php b/src/Model/GpaysafeCredentials.php
index 9f011e6df..b3e454159 100644
--- a/src/Model/GpaysafeCredentials.php
+++ b/src/Model/GpaysafeCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GpaysafeCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/Greenbox.php b/src/Model/Greenbox.php
index 3b9a02c5e..45d08f518 100644
--- a/src/Model/Greenbox.php
+++ b/src/Model/Greenbox.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Greenbox extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Greenbox',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): GreenboxCredentials
diff --git a/src/Model/GreenboxCredentials.php b/src/Model/GreenboxCredentials.php
index 8040eaecf..fc3898e12 100644
--- a/src/Model/GreenboxCredentials.php
+++ b/src/Model/GreenboxCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GreenboxCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('clientSecret', $data)) {
$this->setClientSecret($data['clientSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/GridSegment.php b/src/Model/GridSegment.php
index c4f22d249..7514e70ab 100644
--- a/src/Model/GridSegment.php
+++ b/src/Model/GridSegment.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GridSegment implements JsonSerializable
{
+ use HasMetadata;
+
public const SCOPE_PRIVATE = 'private';
public const SCOPE_PUBLIC = 'public';
@@ -26,7 +29,7 @@ class GridSegment implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('systemId', $data)) {
$this->setSystemId($data['systemId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/GridSegmentData.php b/src/Model/GridSegmentData.php
index 7bf7ad474..554505828 100644
--- a/src/Model/GridSegmentData.php
+++ b/src/Model/GridSegmentData.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GridSegmentData implements JsonSerializable
{
+ use HasMetadata;
+
public const PAGE_DATA_TABLES = 'data-tables';
public const PAGE_CUSTOMER_DETAILS = 'customer-details';
@@ -50,6 +53,10 @@ class GridSegmentData implements JsonSerializable
public const TYPE_PAYOUT_REQUESTS = 'payout-requests';
+ public const TYPE_PAYOUT_ALLOCATIONS = 'payout-allocations';
+
+ public const TYPE_PAYOUT_REQUEST_BATCHES = 'payout-request-batches';
+
public const TYPE_ORGANIZATIONS = 'organizations';
public const TYPE_QUOTES = 'quotes';
@@ -58,7 +65,7 @@ class GridSegmentData implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -78,11 +85,12 @@ public function __construct(array $data = [])
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/GridSegmentOwner.php b/src/Model/GridSegmentOwner.php
index d37bbad91..291b9f21a 100644
--- a/src/Model/GridSegmentOwner.php
+++ b/src/Model/GridSegmentOwner.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GridSegmentOwner implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/GridSegmentUsers.php b/src/Model/GridSegmentUsers.php
index d22dbc342..9655fc578 100644
--- a/src/Model/GridSegmentUsers.php
+++ b/src/Model/GridSegmentUsers.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class GridSegmentUsers implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/HiPay.php b/src/Model/HiPay.php
index 1903150f3..b36bbd18c 100644
--- a/src/Model/HiPay.php
+++ b/src/Model/HiPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class HiPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'HiPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): HiPayCredentials
diff --git a/src/Model/HiPayCredentials.php b/src/Model/HiPayCredentials.php
index 7b1a1b123..902931335 100644
--- a/src/Model/HiPayCredentials.php
+++ b/src/Model/HiPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class HiPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiUsername', $data)) {
$this->setApiUsername($data['apiUsername']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiPassword', $data)) {
$this->setApiPassword($data['apiPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiUsername(): string
diff --git a/src/Model/HistogramData.php b/src/Model/HistogramData.php
index a6394f13d..2fc900de7 100644
--- a/src/Model/HistogramData.php
+++ b/src/Model/HistogramData.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class HistogramData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/HistogramDataData.php b/src/Model/HistogramDataData.php
index 56557118c..970f093de 100644
--- a/src/Model/HistogramDataData.php
+++ b/src/Model/HistogramDataData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class HistogramDataData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('date', $data)) {
$this->setDate($data['date']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDate(): ?string
diff --git a/src/Model/IBANInstrument.php b/src/Model/IBANInstrument.php
index 384ce93af..fe08c5d01 100644
--- a/src/Model/IBANInstrument.php
+++ b/src/Model/IBANInstrument.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class IBANInstrument implements BankAccountInstrument
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accountNumber', $data)) {
$this->setAccountNumber($data['accountNumber']);
@@ -32,11 +36,12 @@ public function __construct(array $data = [])
if (array_key_exists('last4', $data)) {
$this->setLast4($data['last4']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccountNumberType(): string
diff --git a/src/Model/IBANType.php b/src/Model/IBANType.php
index 01a09c155..740da67fe 100644
--- a/src/Model/IBANType.php
+++ b/src/Model/IBANType.php
@@ -14,18 +14,18 @@
namespace Rebilly\Sdk\Model;
-class IBANType extends BankAccountCreatePlain
+use Rebilly\Sdk\Trait\HasMetadata;
+
+class IBANType implements BankAccountCreatePlain
{
+ use HasMetadata;
+
public const METHOD_ACH = 'ach';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
- parent::__construct([
- 'accountNumberType' => 'IBAN',
- ] + $data);
-
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
}
@@ -53,11 +53,17 @@ public function __construct(array $data = [])
if (array_key_exists('useAsBackup', $data)) {
$this->setUseAsBackup($data['useAsBackup']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
+ }
+
+ public function getAccountNumberType(): string
+ {
+ return 'IBAN';
}
public function getMethod(): string
@@ -178,7 +184,9 @@ public function setUseAsBackup(null|bool $useAsBackup): static
public function jsonSerialize(): array
{
- $data = [];
+ $data = [
+ 'accountNumberType' => 'IBAN',
+ ];
if (array_key_exists('method', $this->fields)) {
$data['method'] = $this->fields['method'];
}
@@ -207,6 +215,6 @@ public function jsonSerialize(): array
$data['useAsBackup'] = $this->fields['useAsBackup'];
}
- return parent::jsonSerialize() + $data;
+ return $data;
}
}
diff --git a/src/Model/ICEPAY.php b/src/Model/ICEPAY.php
index 485e6c9b1..d6651769e 100644
--- a/src/Model/ICEPAY.php
+++ b/src/Model/ICEPAY.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ICEPAY extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ICEPAY',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ICEPAYCredentials
diff --git a/src/Model/ICEPAYCredentials.php b/src/Model/ICEPAYCredentials.php
index 819b565d3..aafd97141 100644
--- a/src/Model/ICEPAYCredentials.php
+++ b/src/Model/ICEPAYCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ICEPAYCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/ICanPay.php b/src/Model/ICanPay.php
index 9954754c4..fe77e2322 100644
--- a/src/Model/ICanPay.php
+++ b/src/Model/ICanPay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ICanPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'iCanPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ICanPayCredentials
diff --git a/src/Model/ICanPayCredentials.php b/src/Model/ICanPayCredentials.php
index 16ee91309..fcb4a7769 100644
--- a/src/Model/ICanPayCredentials.php
+++ b/src/Model/ICanPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ICanPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('authenticateId', $data)) {
$this->setAuthenticateId($data['authenticateId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAuthenticateId(): string
diff --git a/src/Model/ICanPaySettings.php b/src/Model/ICanPaySettings.php
index 3f0181cbd..a3bcd6ebc 100644
--- a/src/Model/ICanPaySettings.php
+++ b/src/Model/ICanPaySettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ICanPaySettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('use3DSEndpoint', $data)) {
$this->setUse3DSEndpoint($data['use3DSEndpoint']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUse3DSEndpoint(): ?bool
diff --git a/src/Model/ICashOne.php b/src/Model/ICashOne.php
index de25ff646..c7098ea3d 100644
--- a/src/Model/ICashOne.php
+++ b/src/Model/ICashOne.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ICashOne extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'iCashOne',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ICashOneCredentials
diff --git a/src/Model/ICashOneCredentials.php b/src/Model/ICashOneCredentials.php
index 9f2e388ff..5a188b1a2 100644
--- a/src/Model/ICashOneCredentials.php
+++ b/src/Model/ICashOneCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ICashOneCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/ICashOneSettings.php b/src/Model/ICashOneSettings.php
index 796549f7f..87ca67e72 100644
--- a/src/Model/ICashOneSettings.php
+++ b/src/Model/ICashOneSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ICashOneSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantName', $data)) {
$this->setMerchantName($data['merchantName']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantName(): ?string
diff --git a/src/Model/ICheque.php b/src/Model/ICheque.php
index 74f64af00..d82bea563 100644
--- a/src/Model/ICheque.php
+++ b/src/Model/ICheque.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ICheque extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'iCheque',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): IChequeCredentials
diff --git a/src/Model/IChequeCredentials.php b/src/Model/IChequeCredentials.php
index 08dcd5e91..08ead0ee1 100644
--- a/src/Model/IChequeCredentials.php
+++ b/src/Model/IChequeCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IChequeCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecurityToken', $data)) {
$this->setApiSecurityToken($data['apiSecurityToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/IDebit.php b/src/Model/IDebit.php
index 8df269caa..d809cce63 100644
--- a/src/Model/IDebit.php
+++ b/src/Model/IDebit.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class IDebit extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'iDebit',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): IDebitCredentials
diff --git a/src/Model/IDebitCredentials.php b/src/Model/IDebitCredentials.php
index 1bf57fd79..ed518e1b7 100644
--- a/src/Model/IDebitCredentials.php
+++ b/src/Model/IDebitCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IDebitCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/IDebitSettings.php b/src/Model/IDebitSettings.php
index f652d8baf..51de8cebb 100644
--- a/src/Model/IDebitSettings.php
+++ b/src/Model/IDebitSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IDebitSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantSubId', $data)) {
$this->setMerchantSubId($data['merchantSubId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantSubId(): ?int
diff --git a/src/Model/INOVAPAY.php b/src/Model/INOVAPAY.php
index 844fa84c1..4e61b8d7b 100644
--- a/src/Model/INOVAPAY.php
+++ b/src/Model/INOVAPAY.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class INOVAPAY extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'INOVAPAY',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): INOVAPAYCredentials
diff --git a/src/Model/INOVAPAYCredentials.php b/src/Model/INOVAPAYCredentials.php
index 286243673..c50e2e656 100644
--- a/src/Model/INOVAPAYCredentials.php
+++ b/src/Model/INOVAPAYCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class INOVAPAYCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecret', $data)) {
$this->setApiSecret($data['apiSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/Ilixium.php b/src/Model/Ilixium.php
index a8192a112..d1f5865b8 100644
--- a/src/Model/Ilixium.php
+++ b/src/Model/Ilixium.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Ilixium extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Ilixium',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): IlixiumCredentials
diff --git a/src/Model/IlixiumCredentials.php b/src/Model/IlixiumCredentials.php
index d61677ce8..e84f3b084 100644
--- a/src/Model/IlixiumCredentials.php
+++ b/src/Model/IlixiumCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IlixiumCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('sftpKeyPassphrase', $data)) {
$this->setSftpKeyPassphrase($data['sftpKeyPassphrase']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/IlixiumSettings.php b/src/Model/IlixiumSettings.php
index d190a888b..fc617f180 100644
--- a/src/Model/IlixiumSettings.php
+++ b/src/Model/IlixiumSettings.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IlixiumSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const PLATFORM_ITIX = 'itix';
public const PLATFORM_TPG = 'tpg';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('useIpFrame', $data)) {
$this->setUseIpFrame($data['useIpFrame']);
@@ -41,11 +44,12 @@ public function __construct(array $data = [])
if (array_key_exists('usePaceCreditEndpoint', $data)) {
$this->setUsePaceCreditEndpoint($data['usePaceCreditEndpoint']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUseIpFrame(): ?bool
diff --git a/src/Model/IlixiumThreeDSecureServer.php b/src/Model/IlixiumThreeDSecureServer.php
index 1faf9e709..2f1d5a03e 100644
--- a/src/Model/IlixiumThreeDSecureServer.php
+++ b/src/Model/IlixiumThreeDSecureServer.php
@@ -15,23 +15,27 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IlixiumThreeDSecureServer implements JsonSerializable
{
+ use HasMetadata;
+
public const NAME_ILIXIUM3_DS_SERVER = 'Ilixium3dsServer';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/Ingenico.php b/src/Model/Ingenico.php
index 4f3226bdc..78bcd2572 100644
--- a/src/Model/Ingenico.php
+++ b/src/Model/Ingenico.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Ingenico extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Ingenico',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): IngenicoCredentials
diff --git a/src/Model/IngenicoCredentials.php b/src/Model/IngenicoCredentials.php
index f2d1b47a2..fef7de0ef 100644
--- a/src/Model/IngenicoCredentials.php
+++ b/src/Model/IngenicoCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IngenicoCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('skipFraudService', $data)) {
$this->setSkipFraudService($data['skipFraudService']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Inovio.php b/src/Model/Inovio.php
index 14c6e876f..2f95e1304 100644
--- a/src/Model/Inovio.php
+++ b/src/Model/Inovio.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Inovio extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Inovio',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): InovioCredentials
diff --git a/src/Model/InovioCredentials.php b/src/Model/InovioCredentials.php
index f5c0e418a..5d0708f3f 100644
--- a/src/Model/InovioCredentials.php
+++ b/src/Model/InovioCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InovioCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/InovioSettings.php b/src/Model/InovioSettings.php
index 56883f1f3..19a786dd9 100644
--- a/src/Model/InovioSettings.php
+++ b/src/Model/InovioSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InovioSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('websiteId', $data)) {
$this->setWebsiteId($data['websiteId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('productId', $data)) {
$this->setProductId($data['productId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getWebsiteId(): string
diff --git a/src/Model/InstaDebit.php b/src/Model/InstaDebit.php
index f306769f8..063637a23 100644
--- a/src/Model/InstaDebit.php
+++ b/src/Model/InstaDebit.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class InstaDebit extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'InstaDebit',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): InstaDebitCredentials
diff --git a/src/Model/InstaDebitCredentials.php b/src/Model/InstaDebitCredentials.php
index 73262314d..f6a8ef6b9 100644
--- a/src/Model/InstaDebitCredentials.php
+++ b/src/Model/InstaDebitCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InstaDebitCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/InstaDebitSettings.php b/src/Model/InstaDebitSettings.php
index 09aca3632..9db8912da 100644
--- a/src/Model/InstaDebitSettings.php
+++ b/src/Model/InstaDebitSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InstaDebitSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantSubId', $data)) {
$this->setMerchantSubId($data['merchantSubId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantSubId(): ?int
diff --git a/src/Model/IntegerCustomField.php b/src/Model/IntegerCustomField.php
index a6bd4b82c..d24cc6736 100644
--- a/src/Model/IntegerCustomField.php
+++ b/src/Model/IntegerCustomField.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class IntegerCustomField implements CustomField
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/IntegerCustomFieldAdditionalSchema.php b/src/Model/IntegerCustomFieldAdditionalSchema.php
index cfba7141c..fc3b630ec 100644
--- a/src/Model/IntegerCustomFieldAdditionalSchema.php
+++ b/src/Model/IntegerCustomFieldAdditionalSchema.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IntegerCustomFieldAdditionalSchema implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('minimum', $data)) {
$this->setMinimum($data['minimum']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('default', $data)) {
$this->setDefault($data['default']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMinimum(): ?int
diff --git a/src/Model/Integration.php b/src/Model/Integration.php
index 469dfdbe5..abd4dd4d4 100644
--- a/src/Model/Integration.php
+++ b/src/Model/Integration.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Integration implements JsonSerializable
{
+ use HasMetadata;
+
public const SERVICE_GOOGLE_SHEETS = 'google-sheets';
public const SERVICE_INTUIT_QUICKBOOKS = 'intuit-quickbooks';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('service', $data)) {
$this->setService($data['service']);
@@ -38,11 +41,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getService(): ?string
diff --git a/src/Model/IntegrationConfigurations.php b/src/Model/IntegrationConfigurations.php
index 60f5e57a7..4e8c8a062 100644
--- a/src/Model/IntegrationConfigurations.php
+++ b/src/Model/IntegrationConfigurations.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IntegrationConfigurations implements JsonSerializable
{
+ use HasMetadata;
+
public const EVENT_TYPE_ACCOUNT_PASSWORD_RESET_REQUESTED = 'account-password-reset-requested';
public const EVENT_TYPE_ACCOUNT_VERIFICATION_REQUESTED = 'account-verification-requested';
@@ -212,7 +215,7 @@ class IntegrationConfigurations implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('labels', $data)) {
$this->setLabels($data['labels']);
@@ -223,11 +226,12 @@ public function __construct(array $data = [])
if (array_key_exists('title', $data)) {
$this->setTitle($data['title']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/Intuit.php b/src/Model/Intuit.php
index 587eea16d..8dce7d80c 100644
--- a/src/Model/Intuit.php
+++ b/src/Model/Intuit.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Intuit extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Intuit',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): IntuitCredentials
diff --git a/src/Model/IntuitCredentials.php b/src/Model/IntuitCredentials.php
index 4fc2c937c..b25a6ace2 100644
--- a/src/Model/IntuitCredentials.php
+++ b/src/Model/IntuitCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IntuitCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('clientSecret', $data)) {
$this->setClientSecret($data['clientSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/Invoice.php b/src/Model/Invoice.php
index b50d94f21..45f278bce 100644
--- a/src/Model/Invoice.php
+++ b/src/Model/Invoice.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Invoice implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_DRAFT = 'draft';
public const STATUS_QUOTATION = 'quotation';
@@ -60,7 +63,7 @@ class Invoice implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -200,11 +203,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/InvoiceCustomerTaxIdNumber.php b/src/Model/InvoiceCustomerTaxIdNumber.php
index e771fb324..8ca46ec77 100644
--- a/src/Model/InvoiceCustomerTaxIdNumber.php
+++ b/src/Model/InvoiceCustomerTaxIdNumber.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceCustomerTaxIdNumber implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_EU_VAT = 'eu-vat';
public const TYPE_OTHER = 'other';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -32,11 +35,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/InvoiceDiscounts.php b/src/Model/InvoiceDiscounts.php
index d6235d03e..7aa234fd3 100644
--- a/src/Model/InvoiceDiscounts.php
+++ b/src/Model/InvoiceDiscounts.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceDiscounts implements JsonSerializable
{
+ use HasMetadata;
+
public const CONTEXT_ITEMS = 'items';
public const CONTEXT_SHIPPING = 'shipping';
@@ -26,7 +29,7 @@ class InvoiceDiscounts implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('couponId', $data)) {
$this->setCouponId($data['couponId']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('context', $data)) {
$this->setContext($data['context']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCouponId(): ?string
diff --git a/src/Model/InvoiceEmbedded.php b/src/Model/InvoiceEmbedded.php
index 7c6fabc03..0b5ee0a34 100644
--- a/src/Model/InvoiceEmbedded.php
+++ b/src/Model/InvoiceEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('shippingRate', $data)) {
$this->setShippingRate($data['shippingRate']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/InvoiceIssue.php b/src/Model/InvoiceIssue.php
index b09ee3cda..cf55110f9 100644
--- a/src/Model/InvoiceIssue.php
+++ b/src/Model/InvoiceIssue.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceIssue implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('issuedTime', $data)) {
$this->setIssuedTime($data['issuedTime']);
@@ -30,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('dueTime', $data)) {
$this->setDueTime($data['dueTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIssuedTime(): ?DateTimeImmutable
diff --git a/src/Model/InvoiceItem.php b/src/Model/InvoiceItem.php
index 0a1433427..74ebc7332 100644
--- a/src/Model/InvoiceItem.php
+++ b/src/Model/InvoiceItem.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceItem implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_DEBIT = 'debit';
public const TYPE_CREDIT = 'credit';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -82,11 +85,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/InvoiceItemEmbedded.php b/src/Model/InvoiceItemEmbedded.php
index 609edc5bc..a90e07929 100644
--- a/src/Model/InvoiceItemEmbedded.php
+++ b/src/Model/InvoiceItemEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceItemEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('product', $data)) {
$this->setProduct($data['product']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('plan', $data)) {
$this->setPlan($data['plan']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getProduct(): ?Product
diff --git a/src/Model/InvoiceItemsDataExport.php b/src/Model/InvoiceItemsDataExport.php
index ebf500cb1..399f5c296 100644
--- a/src/Model/InvoiceItemsDataExport.php
+++ b/src/Model/InvoiceItemsDataExport.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceItemsDataExport implements DataExport
{
+ use HasMetadata;
+
public const FORMAT_CSV = 'csv';
public const FORMAT_JSON = 'json';
@@ -37,7 +40,7 @@ class InvoiceItemsDataExport implements DataExport
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -90,11 +93,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResource(): string
@@ -234,15 +238,15 @@ public function getStatus(): ?string
return $this->fields['status'] ?? null;
}
- public function getDateRange(): ?DataExportDateRange
+ public function getDateRange(): ?InvoiceItemsDataExportDateRange
{
return $this->fields['dateRange'] ?? null;
}
- public function setDateRange(null|DataExportDateRange|array $dateRange): static
+ public function setDateRange(null|InvoiceItemsDataExportDateRange|array $dateRange): static
{
- if ($dateRange !== null && !($dateRange instanceof DataExportDateRange)) {
- $dateRange = DataExportDateRange::from($dateRange);
+ if ($dateRange !== null && !($dateRange instanceof InvoiceItemsDataExportDateRange)) {
+ $dateRange = InvoiceItemsDataExportDateRange::from($dateRange);
}
$this->fields['dateRange'] = $dateRange;
diff --git a/src/Model/InvoiceItemsDataExportDateRange.php b/src/Model/InvoiceItemsDataExportDateRange.php
new file mode 100644
index 000000000..cde32006e
--- /dev/null
+++ b/src/Model/InvoiceItemsDataExportDateRange.php
@@ -0,0 +1,96 @@
+setStart($data['start']);
+ }
+ if (array_key_exists('end', $data)) {
+ $this->setEnd($data['end']);
+ }
+ if (array_key_exists('field', $data)) {
+ $this->setField($data['field']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getStart(): string
+ {
+ return $this->fields['start'];
+ }
+
+ public function setStart(string $start): static
+ {
+ $this->fields['start'] = $start;
+
+ return $this;
+ }
+
+ public function getEnd(): string
+ {
+ return $this->fields['end'];
+ }
+
+ public function setEnd(string $end): static
+ {
+ $this->fields['end'] = $end;
+
+ return $this;
+ }
+
+ public function getField(): ?string
+ {
+ return $this->fields['field'] ?? null;
+ }
+
+ public function setField(null|string $field): static
+ {
+ $this->fields['field'] = $field;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('start', $this->fields)) {
+ $data['start'] = $this->fields['start'];
+ }
+ if (array_key_exists('end', $this->fields)) {
+ $data['end'] = $this->fields['end'];
+ }
+ if (array_key_exists('field', $this->fields)) {
+ $data['field'] = $this->fields['field'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/InvoiceItemsDataExportEmbedded.php b/src/Model/InvoiceItemsDataExportEmbedded.php
index 24cfc2489..1f17799b6 100644
--- a/src/Model/InvoiceItemsDataExportEmbedded.php
+++ b/src/Model/InvoiceItemsDataExportEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceItemsDataExportEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('user', $data)) {
$this->setUser($data['user']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): ?File
diff --git a/src/Model/InvoiceOrganizationTaxIdNumber.php b/src/Model/InvoiceOrganizationTaxIdNumber.php
index a65e5fc4b..76aece471 100644
--- a/src/Model/InvoiceOrganizationTaxIdNumber.php
+++ b/src/Model/InvoiceOrganizationTaxIdNumber.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceOrganizationTaxIdNumber implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_EU_VAT = 'eu-vat';
public const TYPE_OTHER = 'other';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -32,11 +35,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/InvoiceReissue.php b/src/Model/InvoiceReissue.php
index 22e9dad29..09ccefcf8 100644
--- a/src/Model/InvoiceReissue.php
+++ b/src/Model/InvoiceReissue.php
@@ -17,21 +17,25 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceReissue implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('dueTime', $data)) {
$this->setDueTime($data['dueTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDueTime(): ?DateTimeImmutable
diff --git a/src/Model/InvoiceRetryAmountAdjustmentInstructionFactory.php b/src/Model/InvoiceRetryAmountAdjustmentInstructionFactory.php
index ab31f4582..b0ac8687e 100644
--- a/src/Model/InvoiceRetryAmountAdjustmentInstructionFactory.php
+++ b/src/Model/InvoiceRetryAmountAdjustmentInstructionFactory.php
@@ -18,11 +18,11 @@
class InvoiceRetryAmountAdjustmentInstructionFactory
{
- public static function from(array $data = []): InvoiceRetryAmountAdjustmentInstruction
+ public static function from(array $data = [], array $metadata = []): InvoiceRetryAmountAdjustmentInstruction
{
return match ($data['method']) {
- 'none' => AmountAdjustmentInstructionNone::from($data),
- 'partial' => AmountAdjustmentInstructionPartial::from($data),
+ 'none' => AmountAdjustmentInstructionNone::from($data, $metadata),
+ 'partial' => AmountAdjustmentInstructionPartial::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/InvoiceRetryInstruction.php b/src/Model/InvoiceRetryInstruction.php
index 2dae941b0..7447add2c 100644
--- a/src/Model/InvoiceRetryInstruction.php
+++ b/src/Model/InvoiceRetryInstruction.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceRetryInstruction implements JsonSerializable
{
+ use HasMetadata;
+
public const AFTER_ATTEMPT_POLICIES_CHANGE_SUBSCRIPTION_RENEWAL_TIME = 'change-subscription-renewal-time';
public const AFTER_RETRY_END_POLICIES_ABANDON_INVOICE = 'abandon-invoice';
@@ -26,7 +29,7 @@ class InvoiceRetryInstruction implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('attempts', $data)) {
$this->setAttempts($data['attempts']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('afterRetryEndPolicies', $data)) {
$this->setAfterRetryEndPolicies($data['afterRetryEndPolicies']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/InvoiceRetryInstructionAttempts.php b/src/Model/InvoiceRetryInstructionAttempts.php
index ac401ce7c..f63f0a780 100644
--- a/src/Model/InvoiceRetryInstructionAttempts.php
+++ b/src/Model/InvoiceRetryInstructionAttempts.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceRetryInstructionAttempts implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('scheduleInstruction', $data)) {
$this->setScheduleInstruction($data['scheduleInstruction']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('tryBackupInstruments', $data)) {
$this->setTryBackupInstruments($data['tryBackupInstruments']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getScheduleInstruction(): InvoiceRetryScheduleInstruction
diff --git a/src/Model/InvoiceRetryScheduleInstructionFactory.php b/src/Model/InvoiceRetryScheduleInstructionFactory.php
index cf9754f54..6303de1f6 100644
--- a/src/Model/InvoiceRetryScheduleInstructionFactory.php
+++ b/src/Model/InvoiceRetryScheduleInstructionFactory.php
@@ -18,14 +18,14 @@
class InvoiceRetryScheduleInstructionFactory
{
- public static function from(array $data = []): InvoiceRetryScheduleInstruction
+ public static function from(array $data = [], array $metadata = []): InvoiceRetryScheduleInstruction
{
return match ($data['method']) {
- 'date-interval' => SchedulingMethodDateInterval::from($data),
- 'day-of-month' => SchedulingMethodDayOfMonth::from($data),
- 'day-of-week' => SchedulingMethodDayOfWeek::from($data),
- 'immediately' => SchedulingMethodImmediately::from($data),
- 'intelligent' => SchedulingMethodIntelligent::from($data),
+ 'date-interval' => SchedulingMethodDateInterval::from($data, $metadata),
+ 'day-of-month' => SchedulingMethodDayOfMonth::from($data, $metadata),
+ 'day-of-week' => SchedulingMethodDayOfWeek::from($data, $metadata),
+ 'immediately' => SchedulingMethodImmediately::from($data, $metadata),
+ 'intelligent' => SchedulingMethodIntelligent::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/InvoiceTimeShift.php b/src/Model/InvoiceTimeShift.php
index 257ae7447..620c6de6e 100644
--- a/src/Model/InvoiceTimeShift.php
+++ b/src/Model/InvoiceTimeShift.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceTimeShift implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('issueTimeShift', $data)) {
$this->setIssueTimeShift($data['issueTimeShift']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('dueTimeShift', $data)) {
$this->setDueTimeShift($data['dueTimeShift']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIssueTimeShift(): ?InvoiceTimeShiftIssueTimeShift
diff --git a/src/Model/InvoiceTimeShiftDueTimeShift.php b/src/Model/InvoiceTimeShiftDueTimeShift.php
index 42da3be03..181c4542b 100644
--- a/src/Model/InvoiceTimeShiftDueTimeShift.php
+++ b/src/Model/InvoiceTimeShiftDueTimeShift.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceTimeShiftDueTimeShift implements JsonSerializable
{
+ use HasMetadata;
+
public const UNIT_SECOND = 'second';
public const UNIT_MINUTE = 'minute';
@@ -44,7 +47,7 @@ class InvoiceTimeShiftDueTimeShift implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('duration', $data)) {
$this->setDuration($data['duration']);
@@ -52,11 +55,12 @@ public function __construct(array $data = [])
if (array_key_exists('unit', $data)) {
$this->setUnit($data['unit']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDuration(): int
diff --git a/src/Model/InvoiceTimeShiftIssueTimeShift.php b/src/Model/InvoiceTimeShiftIssueTimeShift.php
index 9ec44a110..9f0bf8a9a 100644
--- a/src/Model/InvoiceTimeShiftIssueTimeShift.php
+++ b/src/Model/InvoiceTimeShiftIssueTimeShift.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceTimeShiftIssueTimeShift implements JsonSerializable
{
+ use HasMetadata;
+
public const CHRONOLOGY_BEFORE = 'before';
public const UNIT_SECOND = 'second';
@@ -46,7 +49,7 @@ class InvoiceTimeShiftIssueTimeShift implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('chronology', $data)) {
$this->setChronology($data['chronology']);
@@ -57,11 +60,12 @@ public function __construct(array $data = [])
if (array_key_exists('unit', $data)) {
$this->setUnit($data['unit']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getChronology(): string
diff --git a/src/Model/InvoiceTimeline.php b/src/Model/InvoiceTimeline.php
index 234736664..252986030 100644
--- a/src/Model/InvoiceTimeline.php
+++ b/src/Model/InvoiceTimeline.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceTimeline implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_COUPON_APPLIED = 'coupon-applied';
public const TYPE_EMAIL_MESSAGE_SENT = 'email-message-sent';
@@ -88,7 +91,7 @@ class InvoiceTimeline implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -111,11 +114,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/InvoiceTransaction.php b/src/Model/InvoiceTransaction.php
index b99f1c4b9..04a4c6109 100644
--- a/src/Model/InvoiceTransaction.php
+++ b/src/Model/InvoiceTransaction.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceTransaction implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactionId', $data)) {
$this->setTransactionId($data['transactionId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTransactionId(): string
diff --git a/src/Model/InvoiceTransactionAllocation.php b/src/Model/InvoiceTransactionAllocation.php
index 9ac8eeaaa..460705408 100644
--- a/src/Model/InvoiceTransactionAllocation.php
+++ b/src/Model/InvoiceTransactionAllocation.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoiceTransactionAllocation implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('invoiceId', $data)) {
$this->setInvoiceId($data['invoiceId']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getInvoiceId(): ?string
diff --git a/src/Model/InvoicesDataExport.php b/src/Model/InvoicesDataExport.php
index b5675bc7c..2ffe8eb1f 100644
--- a/src/Model/InvoicesDataExport.php
+++ b/src/Model/InvoicesDataExport.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoicesDataExport implements DataExport
{
+ use HasMetadata;
+
public const FORMAT_CSV = 'csv';
public const FORMAT_JSON = 'json';
@@ -39,7 +42,7 @@ class InvoicesDataExport implements DataExport
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -92,11 +95,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResource(): string
@@ -236,15 +240,15 @@ public function getStatus(): ?string
return $this->fields['status'] ?? null;
}
- public function getDateRange(): ?DataExportDateRange
+ public function getDateRange(): ?InvoicesDataExportDateRange
{
return $this->fields['dateRange'] ?? null;
}
- public function setDateRange(null|DataExportDateRange|array $dateRange): static
+ public function setDateRange(null|InvoicesDataExportDateRange|array $dateRange): static
{
- if ($dateRange !== null && !($dateRange instanceof DataExportDateRange)) {
- $dateRange = DataExportDateRange::from($dateRange);
+ if ($dateRange !== null && !($dateRange instanceof InvoicesDataExportDateRange)) {
+ $dateRange = InvoicesDataExportDateRange::from($dateRange);
}
$this->fields['dateRange'] = $dateRange;
diff --git a/src/Model/InvoicesDataExportDateRange.php b/src/Model/InvoicesDataExportDateRange.php
new file mode 100644
index 000000000..62cf50fbb
--- /dev/null
+++ b/src/Model/InvoicesDataExportDateRange.php
@@ -0,0 +1,96 @@
+setStart($data['start']);
+ }
+ if (array_key_exists('end', $data)) {
+ $this->setEnd($data['end']);
+ }
+ if (array_key_exists('field', $data)) {
+ $this->setField($data['field']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getStart(): string
+ {
+ return $this->fields['start'];
+ }
+
+ public function setStart(string $start): static
+ {
+ $this->fields['start'] = $start;
+
+ return $this;
+ }
+
+ public function getEnd(): string
+ {
+ return $this->fields['end'];
+ }
+
+ public function setEnd(string $end): static
+ {
+ $this->fields['end'] = $end;
+
+ return $this;
+ }
+
+ public function getField(): ?string
+ {
+ return $this->fields['field'] ?? null;
+ }
+
+ public function setField(null|string $field): static
+ {
+ $this->fields['field'] = $field;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('start', $this->fields)) {
+ $data['start'] = $this->fields['start'];
+ }
+ if (array_key_exists('end', $this->fields)) {
+ $data['end'] = $this->fields['end'];
+ }
+ if (array_key_exists('field', $this->fields)) {
+ $data['field'] = $this->fields['field'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/InvoicesDataExportEmbedded.php b/src/Model/InvoicesDataExportEmbedded.php
index 630512b20..59626376d 100644
--- a/src/Model/InvoicesDataExportEmbedded.php
+++ b/src/Model/InvoicesDataExportEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class InvoicesDataExportEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('user', $data)) {
$this->setUser($data['user']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): ?File
diff --git a/src/Model/IpayOptions.php b/src/Model/IpayOptions.php
index 358707957..e462e6cd6 100644
--- a/src/Model/IpayOptions.php
+++ b/src/Model/IpayOptions.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class IpayOptions extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'IpayOptions',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): IpayOptionsCredentials
diff --git a/src/Model/IpayOptionsCredentials.php b/src/Model/IpayOptionsCredentials.php
index aca7feb23..b9d633764 100644
--- a/src/Model/IpayOptionsCredentials.php
+++ b/src/Model/IpayOptionsCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IpayOptionsCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sid', $data)) {
$this->setSid($data['sid']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('rcode', $data)) {
$this->setRcode($data['rcode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSid(): string
diff --git a/src/Model/IpayOptionsSettings.php b/src/Model/IpayOptionsSettings.php
index 3c090d111..6ea91e8c5 100644
--- a/src/Model/IpayOptionsSettings.php
+++ b/src/Model/IpayOptionsSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class IpayOptionsSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const SUBDOMAIN_MIGLITE = 'miglite';
public const SUBDOMAIN_W88_ASIAPAY = 'w88asiapay';
@@ -36,7 +39,7 @@ class IpayOptionsSettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('extraStep', $data)) {
$this->setExtraStep($data['extraStep']);
@@ -50,11 +53,12 @@ public function __construct(array $data = [])
if (array_key_exists('cardType', $data)) {
$this->setCardType($data['cardType']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getExtraStep(): ?bool
diff --git a/src/Model/JPMOrbital.php b/src/Model/JPMOrbital.php
index 356ef756c..2b339426c 100644
--- a/src/Model/JPMOrbital.php
+++ b/src/Model/JPMOrbital.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class JPMOrbital extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'JPMOrbital',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): JPMOrbitalCredentials
diff --git a/src/Model/JPMOrbitalCredentials.php b/src/Model/JPMOrbitalCredentials.php
index 547877d8d..6ae206b27 100644
--- a/src/Model/JPMOrbitalCredentials.php
+++ b/src/Model/JPMOrbitalCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JPMOrbitalCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/JetPay.php b/src/Model/JetPay.php
index 652936667..cbb7f50c6 100644
--- a/src/Model/JetPay.php
+++ b/src/Model/JetPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class JetPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'JetPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): JetPayCredentials
diff --git a/src/Model/JetPayCredentials.php b/src/Model/JetPayCredentials.php
index 988f906f0..65c2f9df2 100644
--- a/src/Model/JetPayCredentials.php
+++ b/src/Model/JetPayCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JetPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('TerminalID', $data)) {
$this->setTerminalID($data['TerminalID']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTerminalID(): string
diff --git a/src/Model/Jeton.php b/src/Model/Jeton.php
index 377e6ed2e..7f1151b2d 100644
--- a/src/Model/Jeton.php
+++ b/src/Model/Jeton.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Jeton extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Jeton',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): JetonCredentials
diff --git a/src/Model/JetonCredentials.php b/src/Model/JetonCredentials.php
index 33697d37a..5b54125bd 100644
--- a/src/Model/JetonCredentials.php
+++ b/src/Model/JetonCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JetonCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secret', $data)) {
$this->setSecret($data['secret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/JetonSettings.php b/src/Model/JetonSettings.php
index 9bc27bc4c..ab9f9f0bc 100644
--- a/src/Model/JetonSettings.php
+++ b/src/Model/JetonSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JetonSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const METHOD_CHECKOUT = 'CHECKOUT';
public const METHOD_DIRECT = 'DIRECT';
@@ -28,16 +31,17 @@ class JetonSettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/JournalAccount.php b/src/Model/JournalAccount.php
index df4af5b1e..0d2a08af7 100644
--- a/src/Model/JournalAccount.php
+++ b/src/Model/JournalAccount.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalAccount implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -42,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/JournalEntry.php b/src/Model/JournalEntry.php
index bfce3a9ee..48a8dcfa5 100644
--- a/src/Model/JournalEntry.php
+++ b/src/Model/JournalEntry.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalEntry implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -54,11 +57,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/JournalEntryPeriod.php b/src/Model/JournalEntryPeriod.php
index 81e4241d4..47201fbdb 100644
--- a/src/Model/JournalEntryPeriod.php
+++ b/src/Model/JournalEntryPeriod.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalEntryPeriod implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('startDate', $data)) {
$this->setStartDate($data['startDate']);
@@ -29,11 +32,12 @@ public function __construct(array $data = [])
if (array_key_exists('endDate', $data)) {
$this->setEndDate($data['endDate']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStartDate(): ?DateTimeImmutable
diff --git a/src/Model/JournalRecord.php b/src/Model/JournalRecord.php
index b0e25bf11..b76b2702d 100644
--- a/src/Model/JournalRecord.php
+++ b/src/Model/JournalRecord.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalRecord implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_AUTOMATED = 'automated';
public const TYPE_MANUAL = 'manual';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -70,11 +73,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/JournalRecordEmbedded.php b/src/Model/JournalRecordEmbedded.php
index 1727c1507..fee45e3bc 100644
--- a/src/Model/JournalRecordEmbedded.php
+++ b/src/Model/JournalRecordEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalRecordEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('journalEntry', $data)) {
$this->setJournalEntry($data['journalEntry']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/JournalRecordsDataExport.php b/src/Model/JournalRecordsDataExport.php
index 56c813f46..b83c9125d 100644
--- a/src/Model/JournalRecordsDataExport.php
+++ b/src/Model/JournalRecordsDataExport.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalRecordsDataExport implements DataExport
{
+ use HasMetadata;
+
public const FORMAT_CSV = 'csv';
public const FORMAT_JSON = 'json';
@@ -37,7 +40,7 @@ class JournalRecordsDataExport implements DataExport
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -90,11 +93,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResource(): string
@@ -234,15 +238,15 @@ public function getStatus(): ?string
return $this->fields['status'] ?? null;
}
- public function getDateRange(): ?DataExportDateRange
+ public function getDateRange(): ?JournalRecordsDataExportDateRange
{
return $this->fields['dateRange'] ?? null;
}
- public function setDateRange(null|DataExportDateRange|array $dateRange): static
+ public function setDateRange(null|JournalRecordsDataExportDateRange|array $dateRange): static
{
- if ($dateRange !== null && !($dateRange instanceof DataExportDateRange)) {
- $dateRange = DataExportDateRange::from($dateRange);
+ if ($dateRange !== null && !($dateRange instanceof JournalRecordsDataExportDateRange)) {
+ $dateRange = JournalRecordsDataExportDateRange::from($dateRange);
}
$this->fields['dateRange'] = $dateRange;
diff --git a/src/Model/JournalRecordsDataExportDateRange.php b/src/Model/JournalRecordsDataExportDateRange.php
new file mode 100644
index 000000000..01fe46202
--- /dev/null
+++ b/src/Model/JournalRecordsDataExportDateRange.php
@@ -0,0 +1,96 @@
+setStart($data['start']);
+ }
+ if (array_key_exists('end', $data)) {
+ $this->setEnd($data['end']);
+ }
+ if (array_key_exists('field', $data)) {
+ $this->setField($data['field']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getStart(): string
+ {
+ return $this->fields['start'];
+ }
+
+ public function setStart(string $start): static
+ {
+ $this->fields['start'] = $start;
+
+ return $this;
+ }
+
+ public function getEnd(): string
+ {
+ return $this->fields['end'];
+ }
+
+ public function setEnd(string $end): static
+ {
+ $this->fields['end'] = $end;
+
+ return $this;
+ }
+
+ public function getField(): ?string
+ {
+ return $this->fields['field'] ?? null;
+ }
+
+ public function setField(null|string $field): static
+ {
+ $this->fields['field'] = $field;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('start', $this->fields)) {
+ $data['start'] = $this->fields['start'];
+ }
+ if (array_key_exists('end', $this->fields)) {
+ $data['end'] = $this->fields['end'];
+ }
+ if (array_key_exists('field', $this->fields)) {
+ $data['field'] = $this->fields['field'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/JournalRecordsDataExportEmbedded.php b/src/Model/JournalRecordsDataExportEmbedded.php
index 1dbb06533..b08eb039a 100644
--- a/src/Model/JournalRecordsDataExportEmbedded.php
+++ b/src/Model/JournalRecordsDataExportEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalRecordsDataExportEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('user', $data)) {
$this->setUser($data['user']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): ?File
diff --git a/src/Model/JournalSummaryReport.php b/src/Model/JournalSummaryReport.php
index a4429c2b1..35ce1a8ed 100644
--- a/src/Model/JournalSummaryReport.php
+++ b/src/Model/JournalSummaryReport.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalSummaryReport implements JsonSerializable
{
+ use HasMetadata;
+
public const AGGREGATION_FIELD_CREDIT_ACCOUNT_ID = 'journalRecord.creditAccountId';
public const AGGREGATION_FIELD_DEBIT_ACCOUNT_ID = 'journalRecord.debitAccountId';
@@ -28,7 +31,7 @@ class JournalSummaryReport implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationField', $data)) {
$this->setAggregationField($data['aggregationField']);
@@ -51,11 +54,12 @@ public function __construct(array $data = [])
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationField(): ?string
diff --git a/src/Model/JournalSummaryReportData.php b/src/Model/JournalSummaryReportData.php
index ee36aa5dc..d48483cf6 100644
--- a/src/Model/JournalSummaryReportData.php
+++ b/src/Model/JournalSummaryReportData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalSummaryReportData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('period', $data)) {
$this->setPeriod($data['period']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('breakdown', $data)) {
$this->setBreakdown($data['breakdown']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPeriod(): ?string
diff --git a/src/Model/JournalSummaryReportDataBreakdown.php b/src/Model/JournalSummaryReportDataBreakdown.php
index 8c83650a2..b9e065934 100644
--- a/src/Model/JournalSummaryReportDataBreakdown.php
+++ b/src/Model/JournalSummaryReportDataBreakdown.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class JournalSummaryReportDataBreakdown implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('journalAccountId', $data)) {
$this->setJournalAccountId($data['journalAccountId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('estimatedAmount', $data)) {
$this->setEstimatedAmount($data['estimatedAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getJournalAccountId(): ?string
diff --git a/src/Model/Khelocard.php b/src/Model/Khelocard.php
index 538da181d..5290a2781 100644
--- a/src/Model/Khelocard.php
+++ b/src/Model/Khelocard.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Khelocard extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Khelocard',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): KhelocardCredentials
diff --git a/src/Model/KhelocardCard.php b/src/Model/KhelocardCard.php
index 585431724..d585903e5 100644
--- a/src/Model/KhelocardCard.php
+++ b/src/Model/KhelocardCard.php
@@ -16,16 +16,19 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class KhelocardCard implements PaymentInstrument
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_DEACTIVATED = 'deactivated';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -84,11 +87,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/KhelocardCardEmbedded.php b/src/Model/KhelocardCardEmbedded.php
index 5893e741c..abb5f3d7e 100644
--- a/src/Model/KhelocardCardEmbedded.php
+++ b/src/Model/KhelocardCardEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KhelocardCardEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/KhelocardCardToken.php b/src/Model/KhelocardCardToken.php
index cd4127abd..b872d5b43 100644
--- a/src/Model/KhelocardCardToken.php
+++ b/src/Model/KhelocardCardToken.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class KhelocardCardToken implements CompositeToken
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentInstrument', $data)) {
$this->setPaymentInstrument($data['paymentInstrument']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/KhelocardCardTokenPaymentInstrument.php b/src/Model/KhelocardCardTokenPaymentInstrument.php
index 28df0a1b4..6713c34ab 100644
--- a/src/Model/KhelocardCardTokenPaymentInstrument.php
+++ b/src/Model/KhelocardCardTokenPaymentInstrument.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KhelocardCardTokenPaymentInstrument implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('number', $data)) {
$this->setNumber($data['number']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('expYear', $data)) {
$this->setExpYear($data['expYear']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getNumber(): string
diff --git a/src/Model/KhelocardCredentials.php b/src/Model/KhelocardCredentials.php
index 114389d81..ca6e857c3 100644
--- a/src/Model/KhelocardCredentials.php
+++ b/src/Model/KhelocardCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KhelocardCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecret', $data)) {
$this->setApiSecret($data['apiSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Klarna.php b/src/Model/Klarna.php
index dec06a2e2..e61bc18b8 100644
--- a/src/Model/Klarna.php
+++ b/src/Model/Klarna.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Klarna extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Klarna',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): KlarnaCredentials
diff --git a/src/Model/KlarnaCredentials.php b/src/Model/KlarnaCredentials.php
index 29ce8b711..0fbd6a357 100644
--- a/src/Model/KlarnaCredentials.php
+++ b/src/Model/KlarnaCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KlarnaCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/KlarnaFeature.php b/src/Model/KlarnaFeature.php
index 0ea299697..ba5db166e 100644
--- a/src/Model/KlarnaFeature.php
+++ b/src/Model/KlarnaFeature.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class KlarnaFeature implements ReadyToPayKlarnaMethodFeature
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientToken', $data)) {
$this->setClientToken($data['clientToken']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('sessionId', $data)) {
$this->setSessionId($data['sessionId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/KlarnaSettings.php b/src/Model/KlarnaSettings.php
index 6478c3f25..0e758fee1 100644
--- a/src/Model/KlarnaSettings.php
+++ b/src/Model/KlarnaSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KlarnaSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const REGION_EU = 'EU';
public const REGION_NA = 'NA';
@@ -26,7 +29,7 @@ class KlarnaSettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('region', $data)) {
$this->setRegion($data['region']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('usePayNowStandalone', $data)) {
$this->setUsePayNowStandalone($data['usePayNowStandalone']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRegion(): string
diff --git a/src/Model/KlarnaToken.php b/src/Model/KlarnaToken.php
index dd53212ca..820967fae 100644
--- a/src/Model/KlarnaToken.php
+++ b/src/Model/KlarnaToken.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class KlarnaToken implements CompositeToken
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentInstrument', $data)) {
$this->setPaymentInstrument($data['paymentInstrument']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/KlarnaTokenPaymentInstrument.php b/src/Model/KlarnaTokenPaymentInstrument.php
index 4f2ece2fc..d2e668f75 100644
--- a/src/Model/KlarnaTokenPaymentInstrument.php
+++ b/src/Model/KlarnaTokenPaymentInstrument.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KlarnaTokenPaymentInstrument implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('klarnaAuthorizationToken', $data)) {
$this->setKlarnaAuthorizationToken($data['klarnaAuthorizationToken']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('klarnaSessionId', $data)) {
$this->setKlarnaSessionId($data['klarnaSessionId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getKlarnaAuthorizationToken(): string
diff --git a/src/Model/Konnektive.php b/src/Model/Konnektive.php
index 962ae5d82..52ae8f733 100644
--- a/src/Model/Konnektive.php
+++ b/src/Model/Konnektive.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Konnektive extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Konnektive',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): KonnektiveCredentials
diff --git a/src/Model/KonnektiveCredentials.php b/src/Model/KonnektiveCredentials.php
index bc435f37e..ccea52b01 100644
--- a/src/Model/KonnektiveCredentials.php
+++ b/src/Model/KonnektiveCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KonnektiveCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('loginId', $data)) {
$this->setLoginId($data['loginId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLoginId(): string
diff --git a/src/Model/KonnektiveSettings.php b/src/Model/KonnektiveSettings.php
index ae1e09f2d..a20e47b4b 100644
--- a/src/Model/KonnektiveSettings.php
+++ b/src/Model/KonnektiveSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KonnektiveSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('campaignId', $data)) {
$this->setCampaignId($data['campaignId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('productId', $data)) {
$this->setProductId($data['productId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCampaignId(): string
diff --git a/src/Model/Kushki.php b/src/Model/Kushki.php
index fd045db36..6ad8d06ab 100644
--- a/src/Model/Kushki.php
+++ b/src/Model/Kushki.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Kushki extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Kushki',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): KushkiCredentials
diff --git a/src/Model/KushkiCredentials.php b/src/Model/KushkiCredentials.php
index 8f5532541..ef2f9a715 100644
--- a/src/Model/KushkiCredentials.php
+++ b/src/Model/KushkiCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KushkiCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('privateKey', $data)) {
$this->setPrivateKey($data['privateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrivateKey(): string
diff --git a/src/Model/KushkiSettings.php b/src/Model/KushkiSettings.php
index c6597b55c..fff1c78f9 100644
--- a/src/Model/KushkiSettings.php
+++ b/src/Model/KushkiSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KushkiSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sandbox', $data)) {
$this->setSandbox($data['sandbox']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSandbox(): ?bool
diff --git a/src/Model/KycAddressMatches.php b/src/Model/KycAddressMatches.php
index 65d42cb5f..941388b1f 100644
--- a/src/Model/KycAddressMatches.php
+++ b/src/Model/KycAddressMatches.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use DateTimeImmutable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycAddressMatches implements PostKycDocumentMatchesRequest
{
+ use HasMetadata;
+
public const DOCUMENT_SUBTYPE_PASSPORT = 'passport';
public const DOCUMENT_SUBTYPE_ID_CARD = 'id-card';
@@ -74,7 +77,7 @@ class KycAddressMatches implements PostKycDocumentMatchesRequest
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('firstName', $data)) {
$this->setFirstName($data['firstName']);
@@ -112,11 +115,12 @@ public function __construct(array $data = [])
if (array_key_exists('isTampered', $data)) {
$this->setIsTampered($data['isTampered']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFirstName(): ?string
diff --git a/src/Model/KycDocumentCheck.php b/src/Model/KycDocumentCheck.php
index b237fe06d..56551a5fa 100644
--- a/src/Model/KycDocumentCheck.php
+++ b/src/Model/KycDocumentCheck.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycDocumentCheck implements JsonSerializable
{
+ use HasMetadata;
+
public const NAME_CITY = 'city';
public const NAME_CONTAINS_IMAGE = 'containsImage';
@@ -62,7 +65,7 @@ class KycDocumentCheck implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -76,11 +79,12 @@ public function __construct(array $data = [])
if (array_key_exists('reason', $data)) {
$this->setReason($data['reason']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/KycDocumentFactory.php b/src/Model/KycDocumentFactory.php
index 986292cbe..f2aefc7dc 100644
--- a/src/Model/KycDocumentFactory.php
+++ b/src/Model/KycDocumentFactory.php
@@ -18,14 +18,14 @@
class KycDocumentFactory
{
- public static function from(array $data = []): KycDocument
+ public static function from(array $data = [], array $metadata = []): KycDocument
{
return match ($data['documentType']) {
- 'address-proof' => ProofOfAddressKycDocument::from($data),
- 'credit-file-proof' => ProofOfCreditFileKycDocument::from($data),
- 'funds-proof' => ProofOfFundsKycDocument::from($data),
- 'identity-proof' => ProofOfIdentityKycDocument::from($data),
- 'purchase-proof' => ProofOfPurchaseKycDocument::from($data),
+ 'address-proof' => ProofOfAddressKycDocument::from($data, $metadata),
+ 'credit-file-proof' => ProofOfCreditFileKycDocument::from($data, $metadata),
+ 'funds-proof' => ProofOfFundsKycDocument::from($data, $metadata),
+ 'identity-proof' => ProofOfIdentityKycDocument::from($data, $metadata),
+ 'purchase-proof' => ProofOfPurchaseKycDocument::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/KycDocumentRejection.php b/src/Model/KycDocumentRejection.php
index f57765802..bc477f554 100644
--- a/src/Model/KycDocumentRejection.php
+++ b/src/Model/KycDocumentRejection.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycDocumentRejection implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_DOCUMENT_UNREADABLE = 'document-unreadable';
public const TYPE_DOCUMENT_EXPIRED = 'document-expired';
@@ -54,7 +57,7 @@ class KycDocumentRejection implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -62,11 +65,12 @@ public function __construct(array $data = [])
if (array_key_exists('message', $data)) {
$this->setMessage($data['message']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/KycIdentityMatches.php b/src/Model/KycIdentityMatches.php
index fb33a69b9..4875b163c 100644
--- a/src/Model/KycIdentityMatches.php
+++ b/src/Model/KycIdentityMatches.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycIdentityMatches implements PostKycDocumentMatchesRequest
{
+ use HasMetadata;
+
public const DOCUMENT_SUBTYPE_PASSPORT = 'passport';
public const DOCUMENT_SUBTYPE_ID_CARD = 'id-card';
@@ -75,7 +78,7 @@ class KycIdentityMatches implements PostKycDocumentMatchesRequest
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('containsImage', $data)) {
$this->setContainsImage($data['containsImage']);
@@ -131,17 +134,21 @@ public function __construct(array $data = [])
if (array_key_exists('isDigitallyTampered', $data)) {
$this->setIsDigitallyTampered($data['isDigitallyTampered']);
}
+ if (array_key_exists('isPhotocopy', $data)) {
+ $this->setIsPhotocopy($data['isPhotocopy']);
+ }
if (array_key_exists('hasCompletedFaceLiveness', $data)) {
$this->setHasCompletedFaceLiveness($data['hasCompletedFaceLiveness']);
}
if (array_key_exists('expiryDate', $data)) {
$this->setExpiryDate($data['expiryDate']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getContainsImage(): ?bool
@@ -361,6 +368,18 @@ public function setIsDigitallyTampered(null|bool $isDigitallyTampered): static
return $this;
}
+ public function getIsPhotocopy(): ?bool
+ {
+ return $this->fields['isPhotocopy'] ?? null;
+ }
+
+ public function setIsPhotocopy(null|bool $isPhotocopy): static
+ {
+ $this->fields['isPhotocopy'] = $isPhotocopy;
+
+ return $this;
+ }
+
public function getHasCompletedFaceLiveness(): ?bool
{
return $this->fields['hasCompletedFaceLiveness'] ?? null;
@@ -439,6 +458,9 @@ public function jsonSerialize(): array
if (array_key_exists('isDigitallyTampered', $this->fields)) {
$data['isDigitallyTampered'] = $this->fields['isDigitallyTampered'];
}
+ if (array_key_exists('isPhotocopy', $this->fields)) {
+ $data['isPhotocopy'] = $this->fields['isPhotocopy'];
+ }
if (array_key_exists('hasCompletedFaceLiveness', $this->fields)) {
$data['hasCompletedFaceLiveness'] = $this->fields['hasCompletedFaceLiveness'];
}
diff --git a/src/Model/KycRequest.php b/src/Model/KycRequest.php
index 3b79204e9..09ac53cb9 100644
--- a/src/Model/KycRequest.php
+++ b/src/Model/KycRequest.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_GATHERING = 'gathering';
public const STATUS_ATTEMPTED = 'attempted';
@@ -44,7 +47,7 @@ class KycRequest implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -85,11 +88,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/KycRequestDocument.php b/src/Model/KycRequestDocument.php
index cb184250a..fd8279b3e 100644
--- a/src/Model/KycRequestDocument.php
+++ b/src/Model/KycRequestDocument.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycRequestDocument implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_IDENTITY_PROOF = 'identity-proof';
public const TYPE_ADDRESS_PROOF = 'address-proof';
@@ -84,7 +87,7 @@ class KycRequestDocument implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -101,11 +104,12 @@ public function __construct(array $data = [])
if (array_key_exists('faceLivenessRequired', $data)) {
$this->setFaceLivenessRequired($data['faceLivenessRequired']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/KycRequestEmbedded.php b/src/Model/KycRequestEmbedded.php
index e8cdcf28a..809d54d28 100644
--- a/src/Model/KycRequestEmbedded.php
+++ b/src/Model/KycRequestEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycRequestEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('documents', $data)) {
$this->setDocuments($data['documents']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/KycSettings.php b/src/Model/KycSettings.php
index ddf13a2df..6d80a30b2 100644
--- a/src/Model/KycSettings.php
+++ b/src/Model/KycSettings.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const UI_VERSION_1 = '1';
public const UI_VERSION_2 = '2';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('identityProof', $data)) {
$this->setIdentityProof($data['identityProof']);
@@ -35,11 +38,12 @@ public function __construct(array $data = [])
if (array_key_exists('uiVersion', $data)) {
$this->setUiVersion($data['uiVersion']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIdentityProof(): ?KycSettingsIdentity
diff --git a/src/Model/KycSettingsAddress.php b/src/Model/KycSettingsAddress.php
index a8d9e2b4f..2a52711b6 100644
--- a/src/Model/KycSettingsAddress.php
+++ b/src/Model/KycSettingsAddress.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycSettingsAddress implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('weights', $data)) {
$this->setWeights($data['weights']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('thresholds', $data)) {
$this->setThresholds($data['thresholds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getWeights(): ?KycSettingsAddressWeights
diff --git a/src/Model/KycSettingsAddressThresholds.php b/src/Model/KycSettingsAddressThresholds.php
index f8f2aa7b5..f7b9b003f 100644
--- a/src/Model/KycSettingsAddressThresholds.php
+++ b/src/Model/KycSettingsAddressThresholds.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycSettingsAddressThresholds implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('rejectBelow', $data)) {
$this->setRejectBelow($data['rejectBelow']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('acceptAbove', $data)) {
$this->setAcceptAbove($data['acceptAbove']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRejectBelow(): ?int
diff --git a/src/Model/KycSettingsAddressWeights.php b/src/Model/KycSettingsAddressWeights.php
index a328cac20..250baec5d 100644
--- a/src/Model/KycSettingsAddressWeights.php
+++ b/src/Model/KycSettingsAddressWeights.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycSettingsAddressWeights implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('firstName', $data)) {
$this->setFirstName($data['firstName']);
@@ -52,11 +55,12 @@ public function __construct(array $data = [])
if (array_key_exists('isTampered', $data)) {
$this->setIsTampered($data['isTampered']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFirstName(): ?int
diff --git a/src/Model/KycSettingsIdentity.php b/src/Model/KycSettingsIdentity.php
index 624777cc0..d466b55a8 100644
--- a/src/Model/KycSettingsIdentity.php
+++ b/src/Model/KycSettingsIdentity.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycSettingsIdentity implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('weights', $data)) {
$this->setWeights($data['weights']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('minimumAgeSettings', $data)) {
$this->setMinimumAgeSettings($data['minimumAgeSettings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getWeights(): ?KycSettingsIdentityWeights
diff --git a/src/Model/KycSettingsIdentityMinimumAgeSettings.php b/src/Model/KycSettingsIdentityMinimumAgeSettings.php
index 2671a1f2c..1df2e4891 100644
--- a/src/Model/KycSettingsIdentityMinimumAgeSettings.php
+++ b/src/Model/KycSettingsIdentityMinimumAgeSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycSettingsIdentityMinimumAgeSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('defaultMinimumAge', $data)) {
$this->setDefaultMinimumAge($data['defaultMinimumAge']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('locationOverrides', $data)) {
$this->setLocationOverrides($data['locationOverrides']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDefaultMinimumAge(): ?int
diff --git a/src/Model/KycSettingsIdentityMinimumAgeSettingsLocationOverrides.php b/src/Model/KycSettingsIdentityMinimumAgeSettingsLocationOverrides.php
index c21ea0999..5a442f418 100644
--- a/src/Model/KycSettingsIdentityMinimumAgeSettingsLocationOverrides.php
+++ b/src/Model/KycSettingsIdentityMinimumAgeSettingsLocationOverrides.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycSettingsIdentityMinimumAgeSettingsLocationOverrides implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('country', $data)) {
$this->setCountry($data['country']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('minimumAge', $data)) {
$this->setMinimumAge($data['minimumAge']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCountry(): string
diff --git a/src/Model/KycSettingsIdentityThresholds.php b/src/Model/KycSettingsIdentityThresholds.php
index c88652cef..a03ccfd4f 100644
--- a/src/Model/KycSettingsIdentityThresholds.php
+++ b/src/Model/KycSettingsIdentityThresholds.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycSettingsIdentityThresholds implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('rejectBelow', $data)) {
$this->setRejectBelow($data['rejectBelow']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('acceptAbove', $data)) {
$this->setAcceptAbove($data['acceptAbove']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRejectBelow(): ?int
diff --git a/src/Model/KycSettingsIdentityWeights.php b/src/Model/KycSettingsIdentityWeights.php
index 94fd8b979..962daf063 100644
--- a/src/Model/KycSettingsIdentityWeights.php
+++ b/src/Model/KycSettingsIdentityWeights.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class KycSettingsIdentityWeights implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('containsImage', $data)) {
$this->setContainsImage($data['containsImage']);
@@ -64,11 +67,15 @@ public function __construct(array $data = [])
if (array_key_exists('isTampered', $data)) {
$this->setIsTampered($data['isTampered']);
}
+ if (array_key_exists('isPhotocopy', $data)) {
+ $this->setIsPhotocopy($data['isPhotocopy']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getContainsImage(): ?int
@@ -239,6 +246,18 @@ public function setIsTampered(null|int $isTampered): static
return $this;
}
+ public function getIsPhotocopy(): ?int
+ {
+ return $this->fields['isPhotocopy'] ?? null;
+ }
+
+ public function setIsPhotocopy(null|int $isPhotocopy): static
+ {
+ $this->fields['isPhotocopy'] = $isPhotocopy;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
@@ -284,6 +303,9 @@ public function jsonSerialize(): array
if (array_key_exists('isTampered', $this->fields)) {
$data['isTampered'] = $this->fields['isTampered'];
}
+ if (array_key_exists('isPhotocopy', $this->fields)) {
+ $data['isPhotocopy'] = $this->fields['isPhotocopy'];
+ }
return $data;
}
diff --git a/src/Model/LPG.php b/src/Model/LPG.php
index 6edd6e4f3..8d9050e2b 100644
--- a/src/Model/LPG.php
+++ b/src/Model/LPG.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class LPG extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'LPG',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): LPGCredentials
diff --git a/src/Model/LPGCredentials.php b/src/Model/LPGCredentials.php
index 1c8c06844..569829a21 100644
--- a/src/Model/LPGCredentials.php
+++ b/src/Model/LPGCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class LPGCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('payoutPassword', $data)) {
$this->setPayoutPassword($data['payoutPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublicKey(): string
diff --git a/src/Model/LaCore.php b/src/Model/LaCore.php
index 08fbc2b81..439212290 100644
--- a/src/Model/LaCore.php
+++ b/src/Model/LaCore.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class LaCore extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'LaCore',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): LaCoreCredentials
diff --git a/src/Model/LaCoreCredentials.php b/src/Model/LaCoreCredentials.php
index 1071208f1..85270511a 100644
--- a/src/Model/LaCoreCredentials.php
+++ b/src/Model/LaCoreCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class LaCoreCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/LeadSource.php b/src/Model/LeadSource.php
index 009e61cd2..2c945a28a 100644
--- a/src/Model/LeadSource.php
+++ b/src/Model/LeadSource.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class LeadSource implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('medium', $data)) {
$this->setMedium($data['medium']);
@@ -69,11 +72,12 @@ public function __construct(array $data = [])
if (array_key_exists('original', $data)) {
$this->setOriginal($data['original']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMedium(): ?string
diff --git a/src/Model/LeadSourceData.php b/src/Model/LeadSourceData.php
index a9282d932..3358f0c33 100644
--- a/src/Model/LeadSourceData.php
+++ b/src/Model/LeadSourceData.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class LeadSourceData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('medium', $data)) {
$this->setMedium($data['medium']);
@@ -66,11 +69,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMedium(): ?string
diff --git a/src/Model/Limepay.php b/src/Model/Limepay.php
index bd34d7e58..36a9f2a7d 100644
--- a/src/Model/Limepay.php
+++ b/src/Model/Limepay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Limepay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Limepay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): LimepayCredentials
diff --git a/src/Model/LimepayCredentials.php b/src/Model/LimepayCredentials.php
index c071467e1..a4f6063fa 100644
--- a/src/Model/LimepayCredentials.php
+++ b/src/Model/LimepayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class LimepayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('xLogin', $data)) {
$this->setXLogin($data['xLogin']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getXLogin(): string
diff --git a/src/Model/LimepaySettings.php b/src/Model/LimepaySettings.php
index 8da433ce1..ac83308c0 100644
--- a/src/Model/LimepaySettings.php
+++ b/src/Model/LimepaySettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class LimepaySettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('storeDocumentId', $data)) {
$this->setStoreDocumentId($data['storeDocumentId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStoreDocumentId(): ?bool
diff --git a/src/Model/ListTimelineTable.php b/src/Model/ListTimelineTable.php
index 51d0aaadd..019ef2974 100644
--- a/src/Model/ListTimelineTable.php
+++ b/src/Model/ListTimelineTable.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ListTimelineTable extends TimelineTable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'type' => 'list',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/Loonie.php b/src/Model/Loonie.php
index 2f94db1c2..53880b1ae 100644
--- a/src/Model/Loonie.php
+++ b/src/Model/Loonie.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Loonie extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'loonie',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): LoonieCredentials
diff --git a/src/Model/LoonieCredentials.php b/src/Model/LoonieCredentials.php
index 7bcf19f6b..fd04e4156 100644
--- a/src/Model/LoonieCredentials.php
+++ b/src/Model/LoonieCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class LoonieCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantToken', $data)) {
$this->setMerchantToken($data['merchantToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Loonio.php b/src/Model/Loonio.php
index 105e4af33..6e4a6ed0b 100644
--- a/src/Model/Loonio.php
+++ b/src/Model/Loonio.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Loonio extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Loonio',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): LoonioCredentials
diff --git a/src/Model/LoonioCredentials.php b/src/Model/LoonioCredentials.php
index 753e904e9..ff58d7ead 100644
--- a/src/Model/LoonioCredentials.php
+++ b/src/Model/LoonioCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class LoonioCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('accountId', $data)) {
$this->setAccountId($data['accountId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/MailgunCredential.php b/src/Model/MailgunCredential.php
index 933ef791c..c449af27a 100644
--- a/src/Model/MailgunCredential.php
+++ b/src/Model/MailgunCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class MailgunCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -27,7 +30,7 @@ class MailgunCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -53,11 +56,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/ManualShipping.php b/src/Model/ManualShipping.php
index f7a857cde..c4dbf87d4 100644
--- a/src/Model/ManualShipping.php
+++ b/src/Model/ManualShipping.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ManualShipping implements Shipping
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCalculator(): string
diff --git a/src/Model/ManualTax.php b/src/Model/ManualTax.php
index 98ced5281..bc04de2c5 100644
--- a/src/Model/ManualTax.php
+++ b/src/Model/ManualTax.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ManualTax implements Taxes
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('items', $data)) {
$this->setItems($data['items']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCalculator(): string
diff --git a/src/Model/MaxiCash.php b/src/Model/MaxiCash.php
index 20858eb42..8cf704d3a 100644
--- a/src/Model/MaxiCash.php
+++ b/src/Model/MaxiCash.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MaxiCash extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'MaxiCash',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MaxiCashCredentials
diff --git a/src/Model/MaxiCashCredentials.php b/src/Model/MaxiCashCredentials.php
index b341ca85f..1eb2a32bc 100644
--- a/src/Model/MaxiCashCredentials.php
+++ b/src/Model/MaxiCashCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MaxiCashCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Membership.php b/src/Model/Membership.php
index e306b1835..8de8656e4 100644
--- a/src/Model/Membership.php
+++ b/src/Model/Membership.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Membership implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('organization', $data)) {
$this->setOrganization($data['organization']);
@@ -52,11 +55,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getOrganization(): MembershipOrganization
diff --git a/src/Model/MembershipEmbedded.php b/src/Model/MembershipEmbedded.php
index 184dc45b8..233c9cdbe 100644
--- a/src/Model/MembershipEmbedded.php
+++ b/src/Model/MembershipEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MembershipEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('roles', $data)) {
$this->setRoles($data['roles']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/MembershipOrganization.php b/src/Model/MembershipOrganization.php
index 0973edc74..a7d0dd610 100644
--- a/src/Model/MembershipOrganization.php
+++ b/src/Model/MembershipOrganization.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MembershipOrganization implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -36,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/MembershipUser.php b/src/Model/MembershipUser.php
index b207c55eb..bc0b53233 100644
--- a/src/Model/MembershipUser.php
+++ b/src/Model/MembershipUser.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MembershipUser implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('email', $data)) {
$this->setEmail($data['email']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/MercadoPago.php b/src/Model/MercadoPago.php
index 853aa4efe..c676d14aa 100644
--- a/src/Model/MercadoPago.php
+++ b/src/Model/MercadoPago.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MercadoPago extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'MercadoPago',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MercadoPagoCredentials
diff --git a/src/Model/MercadoPagoCredentials.php b/src/Model/MercadoPagoCredentials.php
index 7ad3ded73..e4afb59fc 100644
--- a/src/Model/MercadoPagoCredentials.php
+++ b/src/Model/MercadoPagoCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MercadoPagoCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('accessToken', $data)) {
$this->setAccessToken($data['accessToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublicKey(): string
diff --git a/src/Model/MercadoPagoSettings.php b/src/Model/MercadoPagoSettings.php
index 9b57a3a6a..f5b708273 100644
--- a/src/Model/MercadoPagoSettings.php
+++ b/src/Model/MercadoPagoSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MercadoPagoSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('collectDeviceId', $data)) {
$this->setCollectDeviceId($data['collectDeviceId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCollectDeviceId(): ?bool
diff --git a/src/Model/MiFinity.php b/src/Model/MiFinity.php
index 00914fefb..e5f02d675 100644
--- a/src/Model/MiFinity.php
+++ b/src/Model/MiFinity.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MiFinity extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'MiFinity',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MiFinityCredentials
diff --git a/src/Model/MiFinityCredentials.php b/src/Model/MiFinityCredentials.php
index d172e154d..bb005b29f 100644
--- a/src/Model/MiFinityCredentials.php
+++ b/src/Model/MiFinityCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MiFinityCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('brandId', $data)) {
$this->setBrandId($data['brandId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/MobilePay.php b/src/Model/MobilePay.php
index 5bdf07b17..bd6bb6274 100644
--- a/src/Model/MobilePay.php
+++ b/src/Model/MobilePay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MobilePay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'MobilePay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MobilePayCredentials
diff --git a/src/Model/MobilePayCredentials.php b/src/Model/MobilePayCredentials.php
index 1b7a9f0a7..779e7bf25 100644
--- a/src/Model/MobilePayCredentials.php
+++ b/src/Model/MobilePayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MobilePayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantSerialNumber', $data)) {
$this->setMerchantSerialNumber($data['merchantSerialNumber']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('clientSecret', $data)) {
$this->setClientSecret($data['clientSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantSerialNumber(): string
diff --git a/src/Model/MonRem.php b/src/Model/MonRem.php
index d109c915d..0403bb946 100644
--- a/src/Model/MonRem.php
+++ b/src/Model/MonRem.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MonRem extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'MonRem',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MonRemCredentials
diff --git a/src/Model/MonRemCredentials.php b/src/Model/MonRemCredentials.php
index 5f1ce520c..0871a3cda 100644
--- a/src/Model/MonRemCredentials.php
+++ b/src/Model/MonRemCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MonRemCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('clientSecret', $data)) {
$this->setClientSecret($data['clientSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/Moneris.php b/src/Model/Moneris.php
index 6c40d2f6c..b7df500a3 100644
--- a/src/Model/Moneris.php
+++ b/src/Model/Moneris.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Moneris extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Moneris',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MonerisCredentials
diff --git a/src/Model/MonerisCredentials.php b/src/Model/MonerisCredentials.php
index 094d10898..6adb679ed 100644
--- a/src/Model/MonerisCredentials.php
+++ b/src/Model/MonerisCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MonerisCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiToken', $data)) {
$this->setApiToken($data['apiToken']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('storeId', $data)) {
$this->setStoreId($data['storeId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiToken(): string
diff --git a/src/Model/MonetaryCustomField.php b/src/Model/MonetaryCustomField.php
index ee732a6f8..c3df17578 100644
--- a/src/Model/MonetaryCustomField.php
+++ b/src/Model/MonetaryCustomField.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MonetaryCustomField implements CustomField
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/MonetaryCustomFieldAdditionalSchema.php b/src/Model/MonetaryCustomFieldAdditionalSchema.php
index 3b8d098cd..815cb29e7 100644
--- a/src/Model/MonetaryCustomFieldAdditionalSchema.php
+++ b/src/Model/MonetaryCustomFieldAdditionalSchema.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MonetaryCustomFieldAdditionalSchema implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('required', $data)) {
$this->setRequired($data['required']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('default', $data)) {
$this->setDefault($data['default']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRequired(): ?bool
diff --git a/src/Model/MonetaryCustomFieldAdditionalSchemaDefault.php b/src/Model/MonetaryCustomFieldAdditionalSchemaDefault.php
index 19707f44c..cd5154763 100644
--- a/src/Model/MonetaryCustomFieldAdditionalSchemaDefault.php
+++ b/src/Model/MonetaryCustomFieldAdditionalSchemaDefault.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MonetaryCustomFieldAdditionalSchemaDefault implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCurrency(): ?string
diff --git a/src/Model/Money.php b/src/Model/Money.php
index afe7e0a33..582137f16 100644
--- a/src/Model/Money.php
+++ b/src/Model/Money.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Money implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): float
diff --git a/src/Model/Monolo.php b/src/Model/Monolo.php
index 43085cd8d..fb34c36d7 100644
--- a/src/Model/Monolo.php
+++ b/src/Model/Monolo.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Monolo extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Monolo',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MonoloCredentials
diff --git a/src/Model/MonoloCredentials.php b/src/Model/MonoloCredentials.php
index 0aad4fdc1..daf8531f0 100644
--- a/src/Model/MonoloCredentials.php
+++ b/src/Model/MonoloCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MonoloCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('businessId', $data)) {
$this->setBusinessId($data['businessId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secret', $data)) {
$this->setSecret($data['secret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBusinessId(): string
diff --git a/src/Model/MonoloSettings.php b/src/Model/MonoloSettings.php
index cb5b097dd..a1ce5a600 100644
--- a/src/Model/MonoloSettings.php
+++ b/src/Model/MonoloSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MonoloSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('payoutCurrency', $data)) {
$this->setPayoutCurrency($data['payoutCurrency']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('destinationTagCustomField', $data)) {
$this->setDestinationTagCustomField($data['destinationTagCustomField']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPayoutCurrency(): ?string
diff --git a/src/Model/MtaPay.php b/src/Model/MtaPay.php
index 123d52e75..3812e6520 100644
--- a/src/Model/MtaPay.php
+++ b/src/Model/MtaPay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MtaPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'MtaPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MtaPayCredentials
diff --git a/src/Model/MtaPayCredentials.php b/src/Model/MtaPayCredentials.php
index dfd08133f..254c075f5 100644
--- a/src/Model/MtaPayCredentials.php
+++ b/src/Model/MtaPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MtaPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accountId', $data)) {
$this->setAccountId($data['accountId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('md5key', $data)) {
$this->setMd5key($data['md5key']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccountId(): string
diff --git a/src/Model/MtaPaySettings.php b/src/Model/MtaPaySettings.php
index 6e84e118f..6ec703c79 100644
--- a/src/Model/MtaPaySettings.php
+++ b/src/Model/MtaPaySettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MtaPaySettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('goods', $data)) {
$this->setGoods($data['goods']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('mobilePay', $data)) {
$this->setMobilePay($data['mobilePay']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getGoods(): string
diff --git a/src/Model/MuchBetter.php b/src/Model/MuchBetter.php
index b37de77b6..aebc5cacd 100644
--- a/src/Model/MuchBetter.php
+++ b/src/Model/MuchBetter.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MuchBetter extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'MuchBetter',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MuchBetterCredentials
diff --git a/src/Model/MuchBetterCredentials.php b/src/Model/MuchBetterCredentials.php
index a62746405..7287fb890 100644
--- a/src/Model/MuchBetterCredentials.php
+++ b/src/Model/MuchBetterCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MuchBetterCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantAccountId', $data)) {
$this->setMerchantAccountId($data['merchantAccountId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantAccountId(): string
diff --git a/src/Model/MuchBetterGateway.php b/src/Model/MuchBetterGateway.php
index 32fb90581..0d1f18989 100644
--- a/src/Model/MuchBetterGateway.php
+++ b/src/Model/MuchBetterGateway.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MuchBetterGateway extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'MuchBetterGateway',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MuchBetterGatewayCredentials
diff --git a/src/Model/MuchBetterGatewayCredentials.php b/src/Model/MuchBetterGatewayCredentials.php
index 41d5fed71..5d6a70e20 100644
--- a/src/Model/MuchBetterGatewayCredentials.php
+++ b/src/Model/MuchBetterGatewayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MuchBetterGatewayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/MuchBetterGatewaySettings.php b/src/Model/MuchBetterGatewaySettings.php
index 009658fd9..7682834d6 100644
--- a/src/Model/MuchBetterGatewaySettings.php
+++ b/src/Model/MuchBetterGatewaySettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MuchBetterGatewaySettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('hasPhoneNumberRequest', $data)) {
$this->setHasPhoneNumberRequest($data['hasPhoneNumberRequest']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getHasPhoneNumberRequest(): ?bool
diff --git a/src/Model/MuchBetterSettings.php b/src/Model/MuchBetterSettings.php
index 8d2a2372d..a866aa3a0 100644
--- a/src/Model/MuchBetterSettings.php
+++ b/src/Model/MuchBetterSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MuchBetterSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('brandName', $data)) {
$this->setBrandName($data['brandName']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('hasPhoneNumberRequest', $data)) {
$this->setHasPhoneNumberRequest($data['hasPhoneNumberRequest']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBrandName(): ?string
diff --git a/src/Model/MyFatoorah.php b/src/Model/MyFatoorah.php
index c0dc5d73a..b3e6ad26d 100644
--- a/src/Model/MyFatoorah.php
+++ b/src/Model/MyFatoorah.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class MyFatoorah extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'MyFatoorah',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): MyFatoorahCredentials
diff --git a/src/Model/MyFatoorahCredentials.php b/src/Model/MyFatoorahCredentials.php
index a14a64602..bdc120c46 100644
--- a/src/Model/MyFatoorahCredentials.php
+++ b/src/Model/MyFatoorahCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class MyFatoorahCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/NGenius.php b/src/Model/NGenius.php
index 80da4a98d..30f1f222d 100644
--- a/src/Model/NGenius.php
+++ b/src/Model/NGenius.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class NGenius extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'NGenius',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NGeniusCredentials
diff --git a/src/Model/NGeniusCredentials.php b/src/Model/NGeniusCredentials.php
index eea252c20..18c7191b2 100644
--- a/src/Model/NGeniusCredentials.php
+++ b/src/Model/NGeniusCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NGeniusCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('outletId', $data)) {
$this->setOutletId($data['outletId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getOutletId(): string
diff --git a/src/Model/NMI.php b/src/Model/NMI.php
index bb0ddc199..5c0179c74 100644
--- a/src/Model/NMI.php
+++ b/src/Model/NMI.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class NMI extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'NMI',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NMICredentials
diff --git a/src/Model/NMICredentials.php b/src/Model/NMICredentials.php
index c9fbe0de3..9abd8e6da 100644
--- a/src/Model/NMICredentials.php
+++ b/src/Model/NMICredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NMICredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -28,11 +31,15 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ if (array_key_exists('apiKey', $data)) {
+ $this->setApiKey($data['apiKey']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
@@ -59,6 +66,18 @@ public function setPassword(string $password): static
return $this;
}
+ public function getApiKey(): ?string
+ {
+ return $this->fields['apiKey'] ?? null;
+ }
+
+ public function setApiKey(null|string $apiKey): static
+ {
+ $this->fields['apiKey'] = $apiKey;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
@@ -68,6 +87,9 @@ public function jsonSerialize(): array
if (array_key_exists('password', $this->fields)) {
$data['password'] = $this->fields['password'];
}
+ if (array_key_exists('apiKey', $this->fields)) {
+ $data['apiKey'] = $this->fields['apiKey'];
+ }
return $data;
}
diff --git a/src/Model/NMISettings.php b/src/Model/NMISettings.php
index 630396c91..08478e3f5 100644
--- a/src/Model/NMISettings.php
+++ b/src/Model/NMISettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NMISettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('disableStoredCredentials', $data)) {
$this->setDisableStoredCredentials($data['disableStoredCredentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDisableStoredCredentials(): ?bool
diff --git a/src/Model/NOWPayments.php b/src/Model/NOWPayments.php
index 97ba69321..52a02e1c4 100644
--- a/src/Model/NOWPayments.php
+++ b/src/Model/NOWPayments.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class NOWPayments extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'NOWPayments',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NOWPaymentsCredentials
diff --git a/src/Model/NOWPaymentsCredentials.php b/src/Model/NOWPaymentsCredentials.php
index a247b1505..42ba659a7 100644
--- a/src/Model/NOWPaymentsCredentials.php
+++ b/src/Model/NOWPaymentsCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NOWPaymentsCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('ipnSecret', $data)) {
$this->setIpnSecret($data['ipnSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/NOWPaymentsSettings.php b/src/Model/NOWPaymentsSettings.php
index e957cf673..f24c9a8f7 100644
--- a/src/Model/NOWPaymentsSettings.php
+++ b/src/Model/NOWPaymentsSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NOWPaymentsSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('tolerancePercentage', $data)) {
$this->setTolerancePercentage($data['tolerancePercentage']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTolerancePercentage(): int
diff --git a/src/Model/Naewe.php b/src/Model/Naewe.php
index be421ca40..2ef86d95d 100644
--- a/src/Model/Naewe.php
+++ b/src/Model/Naewe.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Naewe extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Naewe',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NaeweCredentials
diff --git a/src/Model/NaeweCredentials.php b/src/Model/NaeweCredentials.php
index f47fa9b73..7bd92d8e4 100644
--- a/src/Model/NaeweCredentials.php
+++ b/src/Model/NaeweCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NaeweCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('businessId', $data)) {
$this->setBusinessId($data['businessId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secret', $data)) {
$this->setSecret($data['secret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBusinessId(): string
diff --git a/src/Model/NaeweSettings.php b/src/Model/NaeweSettings.php
index b152cf201..36b952a6e 100644
--- a/src/Model/NaeweSettings.php
+++ b/src/Model/NaeweSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NaeweSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('payoutCurrency', $data)) {
$this->setPayoutCurrency($data['payoutCurrency']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('destinationTagCustomField', $data)) {
$this->setDestinationTagCustomField($data['destinationTagCustomField']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPayoutCurrency(): ?string
diff --git a/src/Model/Neosurf.php b/src/Model/Neosurf.php
index 03be2aeee..536a4118f 100644
--- a/src/Model/Neosurf.php
+++ b/src/Model/Neosurf.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Neosurf extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Neosurf',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NeosurfCredentials
diff --git a/src/Model/NeosurfCredentials.php b/src/Model/NeosurfCredentials.php
index 84d5551e1..3262837c9 100644
--- a/src/Model/NeosurfCredentials.php
+++ b/src/Model/NeosurfCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NeosurfCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Netbanking.php b/src/Model/Netbanking.php
index 1f668ce7e..5426e3bf1 100644
--- a/src/Model/Netbanking.php
+++ b/src/Model/Netbanking.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Netbanking extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Netbanking',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NetbankingCredentials
diff --git a/src/Model/NetbankingCredentials.php b/src/Model/NetbankingCredentials.php
index f91c220ff..ee52da9f5 100644
--- a/src/Model/NetbankingCredentials.php
+++ b/src/Model/NetbankingCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NetbankingCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('midcode', $data)) {
$this->setMidcode($data['midcode']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('midsecret', $data)) {
$this->setMidsecret($data['midsecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMidcode(): string
diff --git a/src/Model/Neteller.php b/src/Model/Neteller.php
index 7cece5da3..80225487c 100644
--- a/src/Model/Neteller.php
+++ b/src/Model/Neteller.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Neteller extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Neteller',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NetellerCredentials
diff --git a/src/Model/NetellerCredentials.php b/src/Model/NetellerCredentials.php
index bdba535e0..886453ec6 100644
--- a/src/Model/NetellerCredentials.php
+++ b/src/Model/NetellerCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NetellerCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paysafePaymentsApiUsername', $data)) {
$this->setPaysafePaymentsApiUsername($data['paysafePaymentsApiUsername']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('paysafePaymentsApiPassword', $data)) {
$this->setPaysafePaymentsApiPassword($data['paysafePaymentsApiPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaysafePaymentsApiUsername(): string
diff --git a/src/Model/NetellerSettings.php b/src/Model/NetellerSettings.php
index acc98b6a6..408883758 100644
--- a/src/Model/NetellerSettings.php
+++ b/src/Model/NetellerSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NetellerSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('populateCustomerEmail', $data)) {
$this->setPopulateCustomerEmail($data['populateCustomerEmail']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPopulateCustomerEmail(): ?bool
diff --git a/src/Model/NinjaWallet.php b/src/Model/NinjaWallet.php
index cea2b0963..83dc6b529 100644
--- a/src/Model/NinjaWallet.php
+++ b/src/Model/NinjaWallet.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class NinjaWallet extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'NinjaWallet',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NinjaWalletCredentials
diff --git a/src/Model/NinjaWalletCredentials.php b/src/Model/NinjaWalletCredentials.php
index 6068ea442..59428af1b 100644
--- a/src/Model/NinjaWalletCredentials.php
+++ b/src/Model/NinjaWalletCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NinjaWalletCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('passphrase', $data)) {
$this->setPassphrase($data['passphrase']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/NordikCoin.php b/src/Model/NordikCoin.php
index 070d9dfe0..f177d0b96 100644
--- a/src/Model/NordikCoin.php
+++ b/src/Model/NordikCoin.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class NordikCoin extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'NordikCoin',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NordikCoinCredentials
diff --git a/src/Model/NordikCoinCredentials.php b/src/Model/NordikCoinCredentials.php
index ec8c449e4..7535417c7 100644
--- a/src/Model/NordikCoinCredentials.php
+++ b/src/Model/NordikCoinCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NordikCoinCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secret', $data)) {
$this->setSecret($data['secret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/NuaPay.php b/src/Model/NuaPay.php
index 72feea1e3..2b60150a5 100644
--- a/src/Model/NuaPay.php
+++ b/src/Model/NuaPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class NuaPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'NuaPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): NuaPayCredentials
diff --git a/src/Model/NuaPayCredentials.php b/src/Model/NuaPayCredentials.php
index 854989a1e..08ee0690b 100644
--- a/src/Model/NuaPayCredentials.php
+++ b/src/Model/NuaPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NuaPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('nuaPayCommonName', $data)) {
$this->setNuaPayCommonName($data['nuaPayCommonName']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('nuaPayPrivateKey', $data)) {
$this->setNuaPayPrivateKey($data['nuaPayPrivateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getNuaPayCommonName(): string
diff --git a/src/Model/NumberCustomField.php b/src/Model/NumberCustomField.php
index b615deeb1..ed698e7d7 100644
--- a/src/Model/NumberCustomField.php
+++ b/src/Model/NumberCustomField.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class NumberCustomField implements CustomField
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/NumberCustomFieldAdditionalSchema.php b/src/Model/NumberCustomFieldAdditionalSchema.php
index c000227c4..bc1fd9309 100644
--- a/src/Model/NumberCustomFieldAdditionalSchema.php
+++ b/src/Model/NumberCustomFieldAdditionalSchema.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class NumberCustomFieldAdditionalSchema implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('minimum', $data)) {
$this->setMinimum($data['minimum']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('default', $data)) {
$this->setDefault($data['default']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMinimum(): ?float
diff --git a/src/Model/OAuth2Credential.php b/src/Model/OAuth2Credential.php
index 883b58f3d..47c99a08f 100644
--- a/src/Model/OAuth2Credential.php
+++ b/src/Model/OAuth2Credential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class OAuth2Credential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -31,7 +34,7 @@ class OAuth2Credential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -66,11 +69,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/OchaPay.php b/src/Model/OchaPay.php
index f261fb7e6..5a16c3c31 100644
--- a/src/Model/OchaPay.php
+++ b/src/Model/OchaPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class OchaPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'OchaPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): OchaPayCredentials
diff --git a/src/Model/OchaPayCredentials.php b/src/Model/OchaPayCredentials.php
index 7c224b656..a2f57877f 100644
--- a/src/Model/OchaPayCredentials.php
+++ b/src/Model/OchaPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OchaPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiUsername', $data)) {
$this->setApiUsername($data['apiUsername']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretWord', $data)) {
$this->setSecretWord($data['secretWord']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiUsername(): string
diff --git a/src/Model/OmniMatrix.php b/src/Model/OmniMatrix.php
index 9c6e0dce1..ac7b62aab 100644
--- a/src/Model/OmniMatrix.php
+++ b/src/Model/OmniMatrix.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class OmniMatrix extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'OmniMatrix',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): OmniMatrixCredentials
diff --git a/src/Model/OmniMatrixCredentials.php b/src/Model/OmniMatrixCredentials.php
index db562c9b7..8a382ca98 100644
--- a/src/Model/OmniMatrixCredentials.php
+++ b/src/Model/OmniMatrixCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OmniMatrixCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secret', $data)) {
$this->setSecret($data['secret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/OmniMatrixSettings.php b/src/Model/OmniMatrixSettings.php
index ab8486f91..aeef76ead 100644
--- a/src/Model/OmniMatrixSettings.php
+++ b/src/Model/OmniMatrixSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OmniMatrixSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('usePreconfiguredAmounts', $data)) {
$this->setUsePreconfiguredAmounts($data['usePreconfiguredAmounts']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsePreconfiguredAmounts(): ?bool
diff --git a/src/Model/OnRamp.php b/src/Model/OnRamp.php
index 18322edaa..77333ae5b 100644
--- a/src/Model/OnRamp.php
+++ b/src/Model/OnRamp.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class OnRamp extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'OnRamp',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): OnRampCredentials
diff --git a/src/Model/OnRampCredentials.php b/src/Model/OnRampCredentials.php
index 6d9501297..c16616019 100644
--- a/src/Model/OnRampCredentials.php
+++ b/src/Model/OnRampCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OnRampCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/OnRampSettings.php b/src/Model/OnRampSettings.php
index 2f62edead..c9671f75e 100644
--- a/src/Model/OnRampSettings.php
+++ b/src/Model/OnRampSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OnRampSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('useServerToServerApi', $data)) {
$this->setUseServerToServerApi($data['useServerToServerApi']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('logoUrl', $data)) {
$this->setLogoUrl($data['logoUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUseServerToServerApi(): ?bool
diff --git a/src/Model/OneColumnTimelineTable.php b/src/Model/OneColumnTimelineTable.php
index 4cbdd07a6..64ae5e816 100644
--- a/src/Model/OneColumnTimelineTable.php
+++ b/src/Model/OneColumnTimelineTable.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class OneColumnTimelineTable extends TimelineTable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'type' => 'one-column',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/OneColumnTimelineTableData.php b/src/Model/OneColumnTimelineTableData.php
index 8d60b9c8a..7bd18d9d3 100644
--- a/src/Model/OneColumnTimelineTableData.php
+++ b/src/Model/OneColumnTimelineTableData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OneColumnTimelineTableData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('attribute', $data)) {
$this->setAttribute($data['attribute']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAttribute(): ?string
diff --git a/src/Model/OneTimeOrder.php b/src/Model/OneTimeOrder.php
index 803f9e77b..0c354c815 100644
--- a/src/Model/OneTimeOrder.php
+++ b/src/Model/OneTimeOrder.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class OneTimeOrder implements Order
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_VOIDED = 'voided';
@@ -29,7 +32,7 @@ class OneTimeOrder implements Order
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -103,6 +106,9 @@ public function __construct(array $data = [])
if (array_key_exists('revision', $data)) {
$this->setRevision($data['revision']);
}
+ if (array_key_exists('isNew', $data)) {
+ $this->setIsNew($data['isNew']);
+ }
if (array_key_exists('createdTime', $data)) {
$this->setCreatedTime($data['createdTime']);
}
@@ -115,11 +121,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
@@ -375,6 +382,11 @@ public function getRevision(): ?int
return $this->fields['revision'] ?? null;
}
+ public function getIsNew(): ?bool
+ {
+ return $this->fields['isNew'] ?? null;
+ }
+
public function getCreatedTime(): ?DateTimeImmutable
{
return $this->fields['createdTime'] ?? null;
@@ -489,6 +501,9 @@ public function jsonSerialize(): array
if (array_key_exists('revision', $this->fields)) {
$data['revision'] = $this->fields['revision'];
}
+ if (array_key_exists('isNew', $this->fields)) {
+ $data['isNew'] = $this->fields['isNew'];
+ }
if (array_key_exists('createdTime', $this->fields)) {
$data['createdTime'] = $this->fields['createdTime']?->format(DateTimeInterface::RFC3339);
}
@@ -599,6 +614,13 @@ private function setRevision(null|int $revision): static
return $this;
}
+ private function setIsNew(null|bool $isNew): static
+ {
+ $this->fields['isNew'] = $isNew;
+
+ return $this;
+ }
+
private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
{
if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
diff --git a/src/Model/OneTimeOrderEmbedded.php b/src/Model/OneTimeOrderEmbedded.php
index 98e6c0f06..2a1763f39 100644
--- a/src/Model/OneTimeOrderEmbedded.php
+++ b/src/Model/OneTimeOrderEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OneTimeOrderEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('website', $data)) {
$this->setWebsite($data['website']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/OneTimeSale.php b/src/Model/OneTimeSale.php
index b829237b0..632a89c6d 100644
--- a/src/Model/OneTimeSale.php
+++ b/src/Model/OneTimeSale.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class OneTimeSale implements SubscriptionOrOneTimeSale
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_ABANDONED = 'abandoned';
@@ -49,7 +52,7 @@ class OneTimeSale implements SubscriptionOrOneTimeSale
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -129,11 +132,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getOrderType(): string
diff --git a/src/Model/OneTimeSaleEmbedded.php b/src/Model/OneTimeSaleEmbedded.php
index f34bdc679..16de02001 100644
--- a/src/Model/OneTimeSaleEmbedded.php
+++ b/src/Model/OneTimeSaleEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OneTimeSaleEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('recentInvoice', $data)) {
$this->setRecentInvoice($data['recentInvoice']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentInstrument', $data)) {
$this->setPaymentInstrument($data['paymentInstrument']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRecentInvoice(): ?Invoice
diff --git a/src/Model/OneTimeSaleItem.php b/src/Model/OneTimeSaleItem.php
index 52a2746d7..ed31383bd 100644
--- a/src/Model/OneTimeSaleItem.php
+++ b/src/Model/OneTimeSaleItem.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class OneTimeSaleItem implements RecurringOrderItems
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/OneTimeSalePlan.php b/src/Model/OneTimeSalePlan.php
index a3f4651d5..4869d553e 100644
--- a/src/Model/OneTimeSalePlan.php
+++ b/src/Model/OneTimeSalePlan.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class OneTimeSalePlan implements Plan, FlexiblePlan
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -74,16 +77,17 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
- public function getId(): ?string
+ public function getId(): string
{
- return $this->fields['id'] ?? null;
+ return $this->fields['id'];
}
public function getName(): string
@@ -316,7 +320,7 @@ public function jsonSerialize(): array
return $data;
}
- private function setId(null|string $id): static
+ private function setId(string $id): static
{
$this->fields['id'] = $id;
diff --git a/src/Model/Onlineueberweisen.php b/src/Model/Onlineueberweisen.php
index 8c892acc2..47fff16a4 100644
--- a/src/Model/Onlineueberweisen.php
+++ b/src/Model/Onlineueberweisen.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Onlineueberweisen extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Onlineueberweisen',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): OnlineueberweisenCredentials
diff --git a/src/Model/OnlineueberweisenCredentials.php b/src/Model/OnlineueberweisenCredentials.php
index 604575647..e94f8cddb 100644
--- a/src/Model/OnlineueberweisenCredentials.php
+++ b/src/Model/OnlineueberweisenCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OnlineueberweisenCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('nuaPayAccountId', $data)) {
$this->setNuaPayAccountId($data['nuaPayAccountId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/OnlineueberweisenSettings.php b/src/Model/OnlineueberweisenSettings.php
index f3f53a9ea..b4622fd45 100644
--- a/src/Model/OnlineueberweisenSettings.php
+++ b/src/Model/OnlineueberweisenSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OnlineueberweisenSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('payformCode', $data)) {
$this->setPayformCode($data['payformCode']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('extraStep', $data)) {
$this->setExtraStep($data['extraStep']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPayformCode(): ?string
diff --git a/src/Model/Orbital.php b/src/Model/Orbital.php
index b338059e5..0bc83605b 100644
--- a/src/Model/Orbital.php
+++ b/src/Model/Orbital.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Orbital extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Orbital',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): OrbitalCredentials
diff --git a/src/Model/OrbitalCredentials.php b/src/Model/OrbitalCredentials.php
index 9ea48b9f6..f964f227b 100644
--- a/src/Model/OrbitalCredentials.php
+++ b/src/Model/OrbitalCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrbitalCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/OrbitalSettings.php b/src/Model/OrbitalSettings.php
index 2da2d9104..603cacc01 100644
--- a/src/Model/OrbitalSettings.php
+++ b/src/Model/OrbitalSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrbitalSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const TARGET_CURRENCY_USD = 'USD';
public const TARGET_CURRENCY_EUR = 'EUR';
@@ -32,7 +35,7 @@ class OrbitalSettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('targetCurrency', $data)) {
$this->setTargetCurrency($data['targetCurrency']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('productImageUrl', $data)) {
$this->setProductImageUrl($data['productImageUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTargetCurrency(): ?string
diff --git a/src/Model/Order.php b/src/Model/Order.php
index d471eed94..20f5a75bf 100644
--- a/src/Model/Order.php
+++ b/src/Model/Order.php
@@ -102,6 +102,8 @@ public function setCustomFields(null|array $customFields): static;
public function getRevision(): ?int;
+ public function getIsNew(): ?bool;
+
public function getCreatedTime(): ?DateTimeImmutable;
public function getUpdatedTime(): ?DateTimeImmutable;
diff --git a/src/Model/OrderCancellation.php b/src/Model/OrderCancellation.php
index 1957f08a0..84a51d26e 100644
--- a/src/Model/OrderCancellation.php
+++ b/src/Model/OrderCancellation.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderCancellation implements JsonSerializable
{
+ use HasMetadata;
+
public const CANCELED_BY_MERCHANT = 'merchant';
public const CANCELED_BY_CUSTOMER = 'customer';
@@ -62,7 +65,7 @@ class OrderCancellation implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -115,11 +118,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/OrderCancellationLineItemSubtotal.php b/src/Model/OrderCancellationLineItemSubtotal.php
index a992f1686..20264eb70 100644
--- a/src/Model/OrderCancellationLineItemSubtotal.php
+++ b/src/Model/OrderCancellationLineItemSubtotal.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderCancellationLineItemSubtotal implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/OrderCancellationLineItems.php b/src/Model/OrderCancellationLineItems.php
index ad0a71955..e4bbb8c20 100644
--- a/src/Model/OrderCancellationLineItems.php
+++ b/src/Model/OrderCancellationLineItems.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderCancellationLineItems implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_DEBIT = 'debit';
public const TYPE_CREDIT = 'credit';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/OrderChange.php b/src/Model/OrderChange.php
index a12db33c9..5e9466917 100644
--- a/src/Model/OrderChange.php
+++ b/src/Model/OrderChange.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderChange implements JsonSerializable
{
+ use HasMetadata;
+
public const RENEWAL_POLICY_RESET = 'reset';
public const RENEWAL_POLICY_RETAIN = 'retain';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('items', $data)) {
$this->setItems($data['items']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('ignoreRecurring', $data)) {
$this->setIgnoreRecurring($data['ignoreRecurring']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/OrderChangeItems.php b/src/Model/OrderChangeItems.php
index 40c9fbf88..07cc9d1b0 100644
--- a/src/Model/OrderChangeItems.php
+++ b/src/Model/OrderChangeItems.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderChangeItems implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('plan', $data)) {
$this->setPlan($data['plan']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('usageLimits', $data)) {
$this->setUsageLimits($data['usageLimits']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPlan(): ConfigurablePlan
diff --git a/src/Model/OrderFactory.php b/src/Model/OrderFactory.php
index 9858aeb45..6876c5516 100644
--- a/src/Model/OrderFactory.php
+++ b/src/Model/OrderFactory.php
@@ -18,11 +18,11 @@
class OrderFactory
{
- public static function from(array $data = []): Order
+ public static function from(array $data = [], array $metadata = []): Order
{
return match ($data['type']) {
- 'one-time' => OneTimeOrder::from($data),
- 'recurring' => RecurringOrder::from($data),
+ 'one-time' => OneTimeOrder::from($data, $metadata),
+ 'recurring' => RecurringOrder::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/OrderItemUpdate.php b/src/Model/OrderItemUpdate.php
index 649d8d431..ad98830fb 100644
--- a/src/Model/OrderItemUpdate.php
+++ b/src/Model/OrderItemUpdate.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderItemUpdate implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quantityFilled', $data)) {
$this->setQuantityFilled($data['quantityFilled']);
@@ -28,19 +31,23 @@ public function __construct(array $data = [])
if (array_key_exists('excludeFromMrr', $data)) {
$this->setExcludeFromMrr($data['excludeFromMrr']);
}
+ if (array_key_exists('plan', $data)) {
+ $this->setPlan($data['plan']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
- public function getQuantityFilled(): float
+ public function getQuantityFilled(): ?float
{
- return $this->fields['quantityFilled'];
+ return $this->fields['quantityFilled'] ?? null;
}
- public function setQuantityFilled(float|string $quantityFilled): static
+ public function setQuantityFilled(null|float|string $quantityFilled): static
{
if (is_string($quantityFilled)) {
$quantityFilled = (float) $quantityFilled;
@@ -63,6 +70,22 @@ public function setExcludeFromMrr(null|bool $excludeFromMrr): static
return $this;
}
+ public function getPlan(): ?OrderItemUpdatePlan
+ {
+ return $this->fields['plan'] ?? null;
+ }
+
+ public function setPlan(null|OrderItemUpdatePlan|array $plan): static
+ {
+ if ($plan !== null && !($plan instanceof OrderItemUpdatePlan)) {
+ $plan = OrderItemUpdatePlan::from($plan);
+ }
+
+ $this->fields['plan'] = $plan;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
@@ -72,6 +95,9 @@ public function jsonSerialize(): array
if (array_key_exists('excludeFromMrr', $this->fields)) {
$data['excludeFromMrr'] = $this->fields['excludeFromMrr'];
}
+ if (array_key_exists('plan', $this->fields)) {
+ $data['plan'] = $this->fields['plan']?->jsonSerialize();
+ }
return $data;
}
diff --git a/src/Model/OrderItemUpdatePlan.php b/src/Model/OrderItemUpdatePlan.php
new file mode 100644
index 000000000..9322c4e0a
--- /dev/null
+++ b/src/Model/OrderItemUpdatePlan.php
@@ -0,0 +1,66 @@
+setProductOptions($data['productOptions']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ /**
+ * @return null|array
+ */
+ public function getProductOptions(): ?array
+ {
+ return $this->fields['productOptions'] ?? null;
+ }
+
+ /**
+ * @param null|array $productOptions
+ */
+ public function setProductOptions(null|array $productOptions): static
+ {
+ $this->fields['productOptions'] = $productOptions;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('productOptions', $this->fields)) {
+ $data['productOptions'] = $this->fields['productOptions'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/OrderPause.php b/src/Model/OrderPause.php
index a092a3373..80ab6d4d1 100644
--- a/src/Model/OrderPause.php
+++ b/src/Model/OrderPause.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderPause implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_ONGOING = 'ongoing';
@@ -34,7 +37,7 @@ class OrderPause implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -69,11 +72,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/OrderPreview.php b/src/Model/OrderPreview.php
index 0f279aecb..059d16fa0 100644
--- a/src/Model/OrderPreview.php
+++ b/src/Model/OrderPreview.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderPreview implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('websiteId', $data)) {
$this->setWebsiteId($data['websiteId']);
@@ -67,14 +70,21 @@ public function __construct(array $data = [])
if (array_key_exists('total', $data)) {
$this->setTotal($data['total']);
}
+ if (array_key_exists('initialAmounts', $data)) {
+ $this->setInitialAmounts($data['initialAmounts']);
+ }
+ if (array_key_exists('recurringAmounts', $data)) {
+ $this->setRecurringAmounts($data['recurringAmounts']);
+ }
if (array_key_exists('shipping', $data)) {
$this->setShipping($data['shipping']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getWebsiteId(): string
@@ -224,6 +234,38 @@ public function getTotal(): ?float
return $this->fields['total'] ?? null;
}
+ public function getInitialAmounts(): ?OrderPreviewInitialAmounts
+ {
+ return $this->fields['initialAmounts'] ?? null;
+ }
+
+ public function setInitialAmounts(null|OrderPreviewInitialAmounts|array $initialAmounts): static
+ {
+ if ($initialAmounts !== null && !($initialAmounts instanceof OrderPreviewInitialAmounts)) {
+ $initialAmounts = OrderPreviewInitialAmounts::from($initialAmounts);
+ }
+
+ $this->fields['initialAmounts'] = $initialAmounts;
+
+ return $this;
+ }
+
+ public function getRecurringAmounts(): ?OrderPreviewRecurringAmounts
+ {
+ return $this->fields['recurringAmounts'] ?? null;
+ }
+
+ public function setRecurringAmounts(null|OrderPreviewRecurringAmounts|array $recurringAmounts): static
+ {
+ if ($recurringAmounts !== null && !($recurringAmounts instanceof OrderPreviewRecurringAmounts)) {
+ $recurringAmounts = OrderPreviewRecurringAmounts::from($recurringAmounts);
+ }
+
+ $this->fields['recurringAmounts'] = $recurringAmounts;
+
+ return $this;
+ }
+
public function getShipping(): ?Shipping
{
return $this->fields['shipping'] ?? null;
@@ -311,6 +353,12 @@ public function jsonSerialize(): array
if (array_key_exists('total', $this->fields)) {
$data['total'] = $this->fields['total'];
}
+ if (array_key_exists('initialAmounts', $this->fields)) {
+ $data['initialAmounts'] = $this->fields['initialAmounts']?->jsonSerialize();
+ }
+ if (array_key_exists('recurringAmounts', $this->fields)) {
+ $data['recurringAmounts'] = $this->fields['recurringAmounts']?->jsonSerialize();
+ }
if (array_key_exists('shipping', $this->fields)) {
$data['shipping'] = $this->fields['shipping']?->jsonSerialize();
}
diff --git a/src/Model/OrderPreviewDiscounts.php b/src/Model/OrderPreviewDiscounts.php
index 0384c2d17..c2ce9068a 100644
--- a/src/Model/OrderPreviewDiscounts.php
+++ b/src/Model/OrderPreviewDiscounts.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderPreviewDiscounts implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('couponId', $data)) {
$this->setCouponId($data['couponId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('description', $data)) {
$this->setDescription($data['description']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCouponId(): ?string
diff --git a/src/Model/OrderPreviewInitialAmounts.php b/src/Model/OrderPreviewInitialAmounts.php
new file mode 100644
index 000000000..75c93e0ef
--- /dev/null
+++ b/src/Model/OrderPreviewInitialAmounts.php
@@ -0,0 +1,152 @@
+setAmount($data['amount']);
+ }
+ if (array_key_exists('subtotalAmount', $data)) {
+ $this->setSubtotalAmount($data['subtotalAmount']);
+ }
+ if (array_key_exists('discountAmount', $data)) {
+ $this->setDiscountAmount($data['discountAmount']);
+ }
+ if (array_key_exists('shippingAmount', $data)) {
+ $this->setShippingAmount($data['shippingAmount']);
+ }
+ if (array_key_exists('taxAmount', $data)) {
+ $this->setTaxAmount($data['taxAmount']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getAmount(): ?float
+ {
+ return $this->fields['amount'] ?? null;
+ }
+
+ public function setAmount(null|float|string $amount): static
+ {
+ if (is_string($amount)) {
+ $amount = (float) $amount;
+ }
+
+ $this->fields['amount'] = $amount;
+
+ return $this;
+ }
+
+ public function getSubtotalAmount(): ?float
+ {
+ return $this->fields['subtotalAmount'] ?? null;
+ }
+
+ public function setSubtotalAmount(null|float|string $subtotalAmount): static
+ {
+ if (is_string($subtotalAmount)) {
+ $subtotalAmount = (float) $subtotalAmount;
+ }
+
+ $this->fields['subtotalAmount'] = $subtotalAmount;
+
+ return $this;
+ }
+
+ public function getDiscountAmount(): ?float
+ {
+ return $this->fields['discountAmount'] ?? null;
+ }
+
+ public function setDiscountAmount(null|float|string $discountAmount): static
+ {
+ if (is_string($discountAmount)) {
+ $discountAmount = (float) $discountAmount;
+ }
+
+ $this->fields['discountAmount'] = $discountAmount;
+
+ return $this;
+ }
+
+ public function getShippingAmount(): ?float
+ {
+ return $this->fields['shippingAmount'] ?? null;
+ }
+
+ public function setShippingAmount(null|float|string $shippingAmount): static
+ {
+ if (is_string($shippingAmount)) {
+ $shippingAmount = (float) $shippingAmount;
+ }
+
+ $this->fields['shippingAmount'] = $shippingAmount;
+
+ return $this;
+ }
+
+ public function getTaxAmount(): ?float
+ {
+ return $this->fields['taxAmount'] ?? null;
+ }
+
+ public function setTaxAmount(null|float|string $taxAmount): static
+ {
+ if (is_string($taxAmount)) {
+ $taxAmount = (float) $taxAmount;
+ }
+
+ $this->fields['taxAmount'] = $taxAmount;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('amount', $this->fields)) {
+ $data['amount'] = $this->fields['amount'];
+ }
+ if (array_key_exists('subtotalAmount', $this->fields)) {
+ $data['subtotalAmount'] = $this->fields['subtotalAmount'];
+ }
+ if (array_key_exists('discountAmount', $this->fields)) {
+ $data['discountAmount'] = $this->fields['discountAmount'];
+ }
+ if (array_key_exists('shippingAmount', $this->fields)) {
+ $data['shippingAmount'] = $this->fields['shippingAmount'];
+ }
+ if (array_key_exists('taxAmount', $this->fields)) {
+ $data['taxAmount'] = $this->fields['taxAmount'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/OrderPreviewItems.php b/src/Model/OrderPreviewItems.php
index be61815d7..387422b15 100644
--- a/src/Model/OrderPreviewItems.php
+++ b/src/Model/OrderPreviewItems.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderPreviewItems implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('planId', $data)) {
$this->setPlanId($data['planId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPlanId(): string
diff --git a/src/Model/OrderPreviewLineItems.php b/src/Model/OrderPreviewLineItems.php
index c0da9a567..a791e7e14 100644
--- a/src/Model/OrderPreviewLineItems.php
+++ b/src/Model/OrderPreviewLineItems.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderPreviewLineItems implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_DEBIT = 'debit';
public const TYPE_CREDIT = 'credit';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('productId', $data)) {
$this->setProductId($data['productId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): ?string
diff --git a/src/Model/OrderPreviewRecurringAmounts.php b/src/Model/OrderPreviewRecurringAmounts.php
new file mode 100644
index 000000000..af092aa2e
--- /dev/null
+++ b/src/Model/OrderPreviewRecurringAmounts.php
@@ -0,0 +1,152 @@
+setAmount($data['amount']);
+ }
+ if (array_key_exists('subtotalAmount', $data)) {
+ $this->setSubtotalAmount($data['subtotalAmount']);
+ }
+ if (array_key_exists('discountAmount', $data)) {
+ $this->setDiscountAmount($data['discountAmount']);
+ }
+ if (array_key_exists('shippingAmount', $data)) {
+ $this->setShippingAmount($data['shippingAmount']);
+ }
+ if (array_key_exists('taxAmount', $data)) {
+ $this->setTaxAmount($data['taxAmount']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getAmount(): ?float
+ {
+ return $this->fields['amount'] ?? null;
+ }
+
+ public function setAmount(null|float|string $amount): static
+ {
+ if (is_string($amount)) {
+ $amount = (float) $amount;
+ }
+
+ $this->fields['amount'] = $amount;
+
+ return $this;
+ }
+
+ public function getSubtotalAmount(): ?float
+ {
+ return $this->fields['subtotalAmount'] ?? null;
+ }
+
+ public function setSubtotalAmount(null|float|string $subtotalAmount): static
+ {
+ if (is_string($subtotalAmount)) {
+ $subtotalAmount = (float) $subtotalAmount;
+ }
+
+ $this->fields['subtotalAmount'] = $subtotalAmount;
+
+ return $this;
+ }
+
+ public function getDiscountAmount(): ?float
+ {
+ return $this->fields['discountAmount'] ?? null;
+ }
+
+ public function setDiscountAmount(null|float|string $discountAmount): static
+ {
+ if (is_string($discountAmount)) {
+ $discountAmount = (float) $discountAmount;
+ }
+
+ $this->fields['discountAmount'] = $discountAmount;
+
+ return $this;
+ }
+
+ public function getShippingAmount(): ?float
+ {
+ return $this->fields['shippingAmount'] ?? null;
+ }
+
+ public function setShippingAmount(null|float|string $shippingAmount): static
+ {
+ if (is_string($shippingAmount)) {
+ $shippingAmount = (float) $shippingAmount;
+ }
+
+ $this->fields['shippingAmount'] = $shippingAmount;
+
+ return $this;
+ }
+
+ public function getTaxAmount(): ?float
+ {
+ return $this->fields['taxAmount'] ?? null;
+ }
+
+ public function setTaxAmount(null|float|string $taxAmount): static
+ {
+ if (is_string($taxAmount)) {
+ $taxAmount = (float) $taxAmount;
+ }
+
+ $this->fields['taxAmount'] = $taxAmount;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('amount', $this->fields)) {
+ $data['amount'] = $this->fields['amount'];
+ }
+ if (array_key_exists('subtotalAmount', $this->fields)) {
+ $data['subtotalAmount'] = $this->fields['subtotalAmount'];
+ }
+ if (array_key_exists('discountAmount', $this->fields)) {
+ $data['discountAmount'] = $this->fields['discountAmount'];
+ }
+ if (array_key_exists('shippingAmount', $this->fields)) {
+ $data['shippingAmount'] = $this->fields['shippingAmount'];
+ }
+ if (array_key_exists('taxAmount', $this->fields)) {
+ $data['taxAmount'] = $this->fields['taxAmount'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/OrderPreviewTaxes.php b/src/Model/OrderPreviewTaxes.php
index a6ad98086..3e148ffe3 100644
--- a/src/Model/OrderPreviewTaxes.php
+++ b/src/Model/OrderPreviewTaxes.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderPreviewTaxes implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('description', $data)) {
$this->setDescription($data['description']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/OrderReactivation.php b/src/Model/OrderReactivation.php
index 5ca348576..346d720bb 100644
--- a/src/Model/OrderReactivation.php
+++ b/src/Model/OrderReactivation.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderReactivation implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -54,11 +57,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/OrderTimeline.php b/src/Model/OrderTimeline.php
index 13dc57213..f17fb7d74 100644
--- a/src/Model/OrderTimeline.php
+++ b/src/Model/OrderTimeline.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderTimeline implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_COUPON_APPLIED = 'coupon-applied';
public const TYPE_EMAIL_MESSAGE_SENT = 'email-message-sent';
@@ -114,7 +117,7 @@ class OrderTimeline implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -137,11 +140,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/OrderUpcomingInvoice.php b/src/Model/OrderUpcomingInvoice.php
index acfd74e2d..834e357a1 100644
--- a/src/Model/OrderUpcomingInvoice.php
+++ b/src/Model/OrderUpcomingInvoice.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderUpcomingInvoice implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -72,11 +75,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/OrderUpcomingInvoiceDiscounts.php b/src/Model/OrderUpcomingInvoiceDiscounts.php
index c71ce0650..19b5b3ed8 100644
--- a/src/Model/OrderUpcomingInvoiceDiscounts.php
+++ b/src/Model/OrderUpcomingInvoiceDiscounts.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderUpcomingInvoiceDiscounts implements JsonSerializable
{
+ use HasMetadata;
+
public const CONTEXT_ITEMS = 'items';
public const CONTEXT_SHIPPING = 'shipping';
@@ -26,7 +29,7 @@ class OrderUpcomingInvoiceDiscounts implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('couponId', $data)) {
$this->setCouponId($data['couponId']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('context', $data)) {
$this->setContext($data['context']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCouponId(): ?string
diff --git a/src/Model/OrderUpcomingInvoiceItem.php b/src/Model/OrderUpcomingInvoiceItem.php
index 3b7bad564..911c4c3c4 100644
--- a/src/Model/OrderUpcomingInvoiceItem.php
+++ b/src/Model/OrderUpcomingInvoiceItem.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrderUpcomingInvoiceItem implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -72,11 +75,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/Organization.php b/src/Model/Organization.php
index ba089c2d1..68458339a 100644
--- a/src/Model/Organization.php
+++ b/src/Model/Organization.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Organization implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -87,11 +90,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/OrganizationExport.php b/src/Model/OrganizationExport.php
index b2e1e5084..c04f5e224 100644
--- a/src/Model/OrganizationExport.php
+++ b/src/Model/OrganizationExport.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrganizationExport implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_PROCESSING = 'processing';
@@ -34,7 +37,7 @@ class OrganizationExport implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -63,11 +66,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/OrganizationExportResources.php b/src/Model/OrganizationExportResources.php
index 6ef76a476..4f7546d13 100644
--- a/src/Model/OrganizationExportResources.php
+++ b/src/Model/OrganizationExportResources.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrganizationExportResources implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_CUSTOMERS = 'customers';
public const TYPE_USERS = 'users';
@@ -54,7 +57,7 @@ class OrganizationExportResources implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -62,11 +65,12 @@ public function __construct(array $data = [])
if (array_key_exists('recordCount', $data)) {
$this->setRecordCount($data['recordCount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): ?string
diff --git a/src/Model/OrganizationFeatures.php b/src/Model/OrganizationFeatures.php
index 079c62f42..292007537 100644
--- a/src/Model/OrganizationFeatures.php
+++ b/src/Model/OrganizationFeatures.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrganizationFeatures implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('description', $data)) {
$this->setDescription($data['description']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/OrganizationQuestionnaire.php b/src/Model/OrganizationQuestionnaire.php
index 48107d124..8a2d6fa68 100644
--- a/src/Model/OrganizationQuestionnaire.php
+++ b/src/Model/OrganizationQuestionnaire.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrganizationQuestionnaire implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('role', $data)) {
$this->setRole($data['role']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('launchTiming', $data)) {
$this->setLaunchTiming($data['launchTiming']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRole(): ?string
diff --git a/src/Model/OrganizationSettings.php b/src/Model/OrganizationSettings.php
index 064431efe..5d225d965 100644
--- a/src/Model/OrganizationSettings.php
+++ b/src/Model/OrganizationSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrganizationSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('defaultTaxCalculator', $data)) {
$this->setDefaultTaxCalculator($data['defaultTaxCalculator']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('notifications', $data)) {
$this->setNotifications($data['notifications']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDefaultTaxCalculator(): ?OrganizationSettingsDefaultTaxCalculator
diff --git a/src/Model/OrganizationSettingsBilling.php b/src/Model/OrganizationSettingsBilling.php
index 9202bf3ce..6ef445292 100644
--- a/src/Model/OrganizationSettingsBilling.php
+++ b/src/Model/OrganizationSettingsBilling.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrganizationSettingsBilling implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('pendingOrderTtl', $data)) {
$this->setPendingOrderTtl($data['pendingOrderTtl']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('subtractOneTimeDiscountsFromMrr', $data)) {
$this->setSubtractOneTimeDiscountsFromMrr($data['subtractOneTimeDiscountsFromMrr']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPendingOrderTtl(): ?string
diff --git a/src/Model/OrganizationSettingsDefaultTaxCalculator.php b/src/Model/OrganizationSettingsDefaultTaxCalculator.php
index 03c83c262..51b7f2ca8 100644
--- a/src/Model/OrganizationSettingsDefaultTaxCalculator.php
+++ b/src/Model/OrganizationSettingsDefaultTaxCalculator.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrganizationSettingsDefaultTaxCalculator implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_TAXJAR = 'taxjar';
public const TYPE_AVALARA = 'avalara';
@@ -26,7 +29,7 @@ class OrganizationSettingsDefaultTaxCalculator implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('rate', $data)) {
$this->setRate($data['rate']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/OrganizationSettingsNotifications.php b/src/Model/OrganizationSettingsNotifications.php
index debc204e3..58c3c7ae7 100644
--- a/src/Model/OrganizationSettingsNotifications.php
+++ b/src/Model/OrganizationSettingsNotifications.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrganizationSettingsNotifications implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('notifyOnUserAccessChanges', $data)) {
$this->setNotifyOnUserAccessChanges($data['notifyOnUserAccessChanges']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('notificationEmailAddresses', $data)) {
$this->setNotificationEmailAddresses($data['notificationEmailAddresses']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getNotifyOnUserAccessChanges(): ?bool
diff --git a/src/Model/OrganizationSettingsTaxLocations.php b/src/Model/OrganizationSettingsTaxLocations.php
index fe11898ce..ebd9cc3d7 100644
--- a/src/Model/OrganizationSettingsTaxLocations.php
+++ b/src/Model/OrganizationSettingsTaxLocations.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OrganizationSettingsTaxLocations implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('address', $data)) {
$this->setAddress($data['address']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('postalCode', $data)) {
$this->setPostalCode($data['postalCode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAddress(): ?string
diff --git a/src/Model/OriginalPlan.php b/src/Model/OriginalPlan.php
index 16591a9b0..a592b7177 100644
--- a/src/Model/OriginalPlan.php
+++ b/src/Model/OriginalPlan.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class OriginalPlan implements ConfigurablePlan
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): string
diff --git a/src/Model/OwnerApplicationInstance.php b/src/Model/OwnerApplicationInstance.php
index c3bea443f..6598a81f0 100644
--- a/src/Model/OwnerApplicationInstance.php
+++ b/src/Model/OwnerApplicationInstance.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class OwnerApplicationInstance implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ENABLING = 'enabling';
public const STATUS_ENABLED = 'enabled';
@@ -30,7 +33,7 @@ class OwnerApplicationInstance implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('token', $data)) {
$this->setToken($data['token']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): ?string
diff --git a/src/Model/PPRO.php b/src/Model/PPRO.php
index 5ccc245c0..394c28e54 100644
--- a/src/Model/PPRO.php
+++ b/src/Model/PPRO.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PPRO extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PPRO',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PPROCredentials
diff --git a/src/Model/PPROCredentials.php b/src/Model/PPROCredentials.php
index c67580f4b..bd0d45286 100644
--- a/src/Model/PPROCredentials.php
+++ b/src/Model/PPROCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PPROCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('login', $data)) {
$this->setLogin($data['login']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('sharedSecret', $data)) {
$this->setSharedSecret($data['sharedSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLogin(): string
diff --git a/src/Model/PSiGate.php b/src/Model/PSiGate.php
index 0b5a6ba3c..74f7b835d 100644
--- a/src/Model/PSiGate.php
+++ b/src/Model/PSiGate.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PSiGate extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PSiGate',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PSiGateCredentials
diff --git a/src/Model/PSiGateCredentials.php b/src/Model/PSiGateCredentials.php
index 37b834ef8..dd13c7fca 100644
--- a/src/Model/PSiGateCredentials.php
+++ b/src/Model/PSiGateCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PSiGateCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('disputePassword', $data)) {
$this->setDisputePassword($data['disputePassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/Pagadito.php b/src/Model/Pagadito.php
index e86f4555c..64deb5c51 100644
--- a/src/Model/Pagadito.php
+++ b/src/Model/Pagadito.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Pagadito extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Pagadito',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PagaditoCredentials
diff --git a/src/Model/PagaditoCredentials.php b/src/Model/PagaditoCredentials.php
index 1f4ba2d04..c04d937ce 100644
--- a/src/Model/PagaditoCredentials.php
+++ b/src/Model/PagaditoCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PagaditoCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('uid', $data)) {
$this->setUid($data['uid']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('wsk', $data)) {
$this->setWsk($data['wsk']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUid(): string
diff --git a/src/Model/PagaditoSettings.php b/src/Model/PagaditoSettings.php
index 09f7b2898..afd007148 100644
--- a/src/Model/PagaditoSettings.php
+++ b/src/Model/PagaditoSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PagaditoSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('useRecurringApi', $data)) {
$this->setUseRecurringApi($data['useRecurringApi']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUseRecurringApi(): ?bool
diff --git a/src/Model/Pagsmile.php b/src/Model/Pagsmile.php
index b62ba89ee..3bad1fc2e 100644
--- a/src/Model/Pagsmile.php
+++ b/src/Model/Pagsmile.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Pagsmile extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Pagsmile',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PagsmileCredentials
diff --git a/src/Model/PagsmileCredentials.php b/src/Model/PagsmileCredentials.php
index 812280c24..9dcd47339 100644
--- a/src/Model/PagsmileCredentials.php
+++ b/src/Model/PagsmileCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PagsmileCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecretKey', $data)) {
$this->setApiSecretKey($data['apiSecretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/PagsmileSettings.php b/src/Model/PagsmileSettings.php
index c40635eb7..2ef8842eb 100644
--- a/src/Model/PagsmileSettings.php
+++ b/src/Model/PagsmileSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PagsmileSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('useTradePay', $data)) {
$this->setUseTradePay($data['useTradePay']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUseTradePay(): ?bool
diff --git a/src/Model/Panamerican.php b/src/Model/Panamerican.php
index 23a9259a3..20a5ee7a0 100644
--- a/src/Model/Panamerican.php
+++ b/src/Model/Panamerican.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Panamerican extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Panamerican',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PanamericanCredentials
diff --git a/src/Model/PanamericanCredentials.php b/src/Model/PanamericanCredentials.php
index 8c0905ebe..d0a2584db 100644
--- a/src/Model/PanamericanCredentials.php
+++ b/src/Model/PanamericanCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PanamericanCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('key', $data)) {
$this->setKey($data['key']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getKey(): string
diff --git a/src/Model/PanamericanSettings.php b/src/Model/PanamericanSettings.php
index a60b9cc15..5f5c12daf 100644
--- a/src/Model/PanamericanSettings.php
+++ b/src/Model/PanamericanSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PanamericanSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('extraStep', $data)) {
$this->setExtraStep($data['extraStep']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('convertToAscii', $data)) {
$this->setConvertToAscii($data['convertToAscii']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getExtraStep(): bool
diff --git a/src/Model/PandaGateway.php b/src/Model/PandaGateway.php
index f391d3530..4a8dbf2a5 100644
--- a/src/Model/PandaGateway.php
+++ b/src/Model/PandaGateway.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PandaGateway extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PandaGateway',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PandaGatewayCredentials
diff --git a/src/Model/PandaGatewayCredentials.php b/src/Model/PandaGatewayCredentials.php
index 6ff73c6ad..c3d58db81 100644
--- a/src/Model/PandaGatewayCredentials.php
+++ b/src/Model/PandaGatewayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PandaGatewayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantCode', $data)) {
$this->setMerchantCode($data['merchantCode']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('signKey', $data)) {
$this->setSignKey($data['signKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantCode(): string
diff --git a/src/Model/ParamountCommerce.php b/src/Model/ParamountCommerce.php
index bafad7f9a..fd2b7c791 100644
--- a/src/Model/ParamountCommerce.php
+++ b/src/Model/ParamountCommerce.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ParamountCommerce extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ParamountCommerce',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ParamountCommerceCredentials
diff --git a/src/Model/ParamountCommerceCredentials.php b/src/Model/ParamountCommerceCredentials.php
index 651ba8834..fc28a9452 100644
--- a/src/Model/ParamountCommerceCredentials.php
+++ b/src/Model/ParamountCommerceCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ParamountCommerceCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('clientSecret', $data)) {
$this->setClientSecret($data['clientSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/ParamountCommerceSettings.php b/src/Model/ParamountCommerceSettings.php
index ffcc1e02e..9bad7a656 100644
--- a/src/Model/ParamountCommerceSettings.php
+++ b/src/Model/ParamountCommerceSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ParamountCommerceSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const MERCHANT_TRANSACTION_TYPE_POKER = 'POKER';
public const MERCHANT_TRANSACTION_TYPE_CASINO = 'CASINO';
@@ -32,7 +35,7 @@ class ParamountCommerceSettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantSubId', $data)) {
$this->setMerchantSubId($data['merchantSubId']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('useDirectDeposit', $data)) {
$this->setUseDirectDeposit($data['useDirectDeposit']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantSubId(): string
diff --git a/src/Model/ParamountEft.php b/src/Model/ParamountEft.php
index c98e35b1d..de831a11f 100644
--- a/src/Model/ParamountEft.php
+++ b/src/Model/ParamountEft.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ParamountEft extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ParamountEft',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ParamountEftCredentials
diff --git a/src/Model/ParamountEftCredentials.php b/src/Model/ParamountEftCredentials.php
index ac0abb14d..93cec69dc 100644
--- a/src/Model/ParamountEftCredentials.php
+++ b/src/Model/ParamountEftCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ParamountEftCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchant_id', $data)) {
$this->setMerchantId($data['merchant_id']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('payee', $data)) {
$this->setPayee($data['payee']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/ParamountInterac.php b/src/Model/ParamountInterac.php
index 910bb2c57..d35d27ed6 100644
--- a/src/Model/ParamountInterac.php
+++ b/src/Model/ParamountInterac.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ParamountInterac extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ParamountInterac',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ParamountInteracCredentials
diff --git a/src/Model/ParamountInteracCredentials.php b/src/Model/ParamountInteracCredentials.php
index 3530f8d5e..425b25e41 100644
--- a/src/Model/ParamountInteracCredentials.php
+++ b/src/Model/ParamountInteracCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ParamountInteracCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/ParamountInteracSettings.php b/src/Model/ParamountInteracSettings.php
index 390a8d402..21146deda 100644
--- a/src/Model/ParamountInteracSettings.php
+++ b/src/Model/ParamountInteracSettings.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ParamountInteracSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const PAYMENT_FLOW_REQUEST_MONEY = 'request_money';
public const PAYMENT_FLOW_MANUAL = 'manual';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sandbox', $data)) {
$this->setSandbox($data['sandbox']);
@@ -44,11 +47,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentFlow', $data)) {
$this->setPaymentFlow($data['paymentFlow']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSandbox(): ?bool
diff --git a/src/Model/PatchCreditMemo.php b/src/Model/PatchCreditMemo.php
index 591a12aaa..2d58d9634 100644
--- a/src/Model/PatchCreditMemo.php
+++ b/src/Model/PatchCreditMemo.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchCreditMemo implements JsonSerializable
{
+ use HasMetadata;
+
public const REASON_RETURN = 'return';
public const REASON_PRODUCT_UNSATISFACTORY = 'product-unsatisfactory';
@@ -38,7 +41,7 @@ class PatchCreditMemo implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('allocations', $data)) {
$this->setAllocations($data['allocations']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('shippingAmount', $data)) {
$this->setShippingAmount($data['shippingAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAllocations(): ?PatchCreditMemoAllocations
diff --git a/src/Model/PatchCreditMemoAllocations.php b/src/Model/PatchCreditMemoAllocations.php
index acd632b0e..648bbb3e5 100644
--- a/src/Model/PatchCreditMemoAllocations.php
+++ b/src/Model/PatchCreditMemoAllocations.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchCreditMemoAllocations implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactions', $data)) {
$this->setTransactions($data['transactions']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('invoices', $data)) {
$this->setInvoices($data['invoices']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/PatchCreditMemoAllocationsInvoices.php b/src/Model/PatchCreditMemoAllocationsInvoices.php
index 9f68f5191..2370701be 100644
--- a/src/Model/PatchCreditMemoAllocationsInvoices.php
+++ b/src/Model/PatchCreditMemoAllocationsInvoices.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchCreditMemoAllocationsInvoices implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('invoiceId', $data)) {
$this->setInvoiceId($data['invoiceId']);
@@ -39,11 +42,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getInvoiceId(): ?string
diff --git a/src/Model/PatchCreditMemoAllocationsTransactions.php b/src/Model/PatchCreditMemoAllocationsTransactions.php
index 244bc363f..ce1cf7a1b 100644
--- a/src/Model/PatchCreditMemoAllocationsTransactions.php
+++ b/src/Model/PatchCreditMemoAllocationsTransactions.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchCreditMemoAllocationsTransactions implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactionId', $data)) {
$this->setTransactionId($data['transactionId']);
@@ -39,11 +42,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTransactionId(): ?string
diff --git a/src/Model/PatchCreditMemoItems.php b/src/Model/PatchCreditMemoItems.php
index fc3dadd7a..49953dadd 100644
--- a/src/Model/PatchCreditMemoItems.php
+++ b/src/Model/PatchCreditMemoItems.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchCreditMemoItems implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('tax', $data)) {
$this->setTax($data['tax']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/PatchEmailMessageRequest.php b/src/Model/PatchEmailMessageRequest.php
index 7c7eafb72..fbde38355 100644
--- a/src/Model/PatchEmailMessageRequest.php
+++ b/src/Model/PatchEmailMessageRequest.php
@@ -15,23 +15,27 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchEmailMessageRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_OUTBOX = 'outbox';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): string
diff --git a/src/Model/PatchFee.php b/src/Model/PatchFee.php
index ee73d1d2b..aeb3bda54 100644
--- a/src/Model/PatchFee.php
+++ b/src/Model/PatchFee.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchFee implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_BUY = 'buy';
public const TYPE_SELL = 'sell';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -41,11 +44,12 @@ public function __construct(array $data = [])
if (array_key_exists('settlementSettings', $data)) {
$this->setSettlementSettings($data['settlementSettings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): ?string
diff --git a/src/Model/PatchKycRequestRequest.php b/src/Model/PatchKycRequestRequest.php
index 2a4059a8b..971413a62 100644
--- a/src/Model/PatchKycRequestRequest.php
+++ b/src/Model/PatchKycRequestRequest.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchKycRequestRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_GATHERING = 'gathering';
public const STATUS_ATTEMPTED = 'attempted';
@@ -44,7 +47,7 @@ class PatchKycRequestRequest implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customerId', $data)) {
$this->setCustomerId($data['customerId']);
@@ -85,11 +88,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomerId(): string
diff --git a/src/Model/PatchOrderCancellationRequest.php b/src/Model/PatchOrderCancellationRequest.php
index 1207c7aee..31c12ff99 100644
--- a/src/Model/PatchOrderCancellationRequest.php
+++ b/src/Model/PatchOrderCancellationRequest.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchOrderCancellationRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const CANCELED_BY_MERCHANT = 'merchant';
public const CANCELED_BY_CUSTOMER = 'customer';
@@ -62,7 +65,7 @@ class PatchOrderCancellationRequest implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('canceledBy', $data)) {
$this->setCanceledBy($data['canceledBy']);
@@ -115,11 +118,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCanceledBy(): ?string
diff --git a/src/Model/PatchOrganizationRequest.php b/src/Model/PatchOrganizationRequest.php
index 6cef8c0f5..83033e3ef 100644
--- a/src/Model/PatchOrganizationRequest.php
+++ b/src/Model/PatchOrganizationRequest.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchOrganizationRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -87,11 +90,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/PatchPayoutRequestAllocationRequest.php b/src/Model/PatchPayoutRequestAllocationRequest.php
index ec4d958da..6b1f611d0 100644
--- a/src/Model/PatchPayoutRequestAllocationRequest.php
+++ b/src/Model/PatchPayoutRequestAllocationRequest.php
@@ -15,25 +15,29 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchPayoutRequestAllocationRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PROCESSING = 'processing';
public const STATUS_CANCELED = 'canceled';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): string
diff --git a/src/Model/PatchPayoutRequestRequest.php b/src/Model/PatchPayoutRequestRequest.php
index 2087e5f9c..65cea00cf 100644
--- a/src/Model/PatchPayoutRequestRequest.php
+++ b/src/Model/PatchPayoutRequestRequest.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchPayoutRequestRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
- public const STATUS_FLUSHED = 'flushed';
+ public const STATUS_READY = 'ready';
public const STATUS_APPROVED = 'approved';
@@ -34,7 +37,7 @@ class PatchPayoutRequestRequest implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
@@ -45,11 +48,18 @@ public function __construct(array $data = [])
if (array_key_exists('blocked', $data)) {
$this->setBlocked($data['blocked']);
}
+ if (array_key_exists('blockReason', $data)) {
+ $this->setBlockReason($data['blockReason']);
+ }
+ if (array_key_exists('blockDescription', $data)) {
+ $this->setBlockDescription($data['blockDescription']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): ?string
@@ -88,6 +98,34 @@ public function setBlocked(null|bool $blocked): static
return $this;
}
+ public function getBlockReason(): ?PayoutRequestBlockReason
+ {
+ return $this->fields['blockReason'] ?? null;
+ }
+
+ public function setBlockReason(null|PayoutRequestBlockReason|array $blockReason): static
+ {
+ if ($blockReason !== null && !($blockReason instanceof PayoutRequestBlockReason)) {
+ $blockReason = PayoutRequestBlockReason::from($blockReason);
+ }
+
+ $this->fields['blockReason'] = $blockReason;
+
+ return $this;
+ }
+
+ public function getBlockDescription(): ?string
+ {
+ return $this->fields['blockDescription'] ?? null;
+ }
+
+ public function setBlockDescription(null|string $blockDescription): static
+ {
+ $this->fields['blockDescription'] = $blockDescription;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
@@ -100,6 +138,12 @@ public function jsonSerialize(): array
if (array_key_exists('blocked', $this->fields)) {
$data['blocked'] = $this->fields['blocked'];
}
+ if (array_key_exists('blockReason', $this->fields)) {
+ $data['blockReason'] = $this->fields['blockReason']?->jsonSerialize();
+ }
+ if (array_key_exists('blockDescription', $this->fields)) {
+ $data['blockDescription'] = $this->fields['blockDescription'];
+ }
return $data;
}
diff --git a/src/Model/PatchPlaidCredential.php b/src/Model/PatchPlaidCredential.php
index 5bcd524c0..c581228c2 100644
--- a/src/Model/PatchPlaidCredential.php
+++ b/src/Model/PatchPlaidCredential.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PatchPlaidCredential implements PatchServiceCredentialRequest
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -24,7 +28,7 @@ class PatchPlaidCredential implements PatchServiceCredentialRequest
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
@@ -41,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('useStripe', $data)) {
$this->setUseStripe($data['useStripe']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): ?string
diff --git a/src/Model/PatchQuote.php b/src/Model/PatchQuote.php
index 43c1b512c..18c9d12e3 100644
--- a/src/Model/PatchQuote.php
+++ b/src/Model/PatchQuote.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchQuote implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('tax', $data)) {
$this->setTax($data['tax']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTax(): ?Taxes
diff --git a/src/Model/PatchServiceCredential.php b/src/Model/PatchServiceCredential.php
index 122e730c2..3ddb51170 100644
--- a/src/Model/PatchServiceCredential.php
+++ b/src/Model/PatchServiceCredential.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PatchServiceCredential implements PatchServiceCredentialRequest
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -24,16 +28,17 @@ class PatchServiceCredential implements PatchServiceCredentialRequest
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): string
diff --git a/src/Model/PatchSubscriptionCancellationRequest.php b/src/Model/PatchSubscriptionCancellationRequest.php
index 24ef30c26..0cb7de349 100644
--- a/src/Model/PatchSubscriptionCancellationRequest.php
+++ b/src/Model/PatchSubscriptionCancellationRequest.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchSubscriptionCancellationRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const CANCELED_BY_MERCHANT = 'merchant';
public const CANCELED_BY_CUSTOMER = 'customer';
@@ -62,7 +65,7 @@ class PatchSubscriptionCancellationRequest implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('canceledBy', $data)) {
$this->setCanceledBy($data['canceledBy']);
@@ -115,11 +118,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCanceledBy(): ?string
diff --git a/src/Model/PatchTagRequest.php b/src/Model/PatchTagRequest.php
index f1035aa84..4d14de9b7 100644
--- a/src/Model/PatchTagRequest.php
+++ b/src/Model/PatchTagRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchTagRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/PatchTaxJarCredential.php b/src/Model/PatchTaxJarCredential.php
index 827edd72b..af8a97d3a 100644
--- a/src/Model/PatchTaxJarCredential.php
+++ b/src/Model/PatchTaxJarCredential.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PatchTaxJarCredential implements PatchServiceCredentialRequest
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -24,7 +28,7 @@ class PatchTaxJarCredential implements PatchServiceCredentialRequest
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
@@ -32,11 +36,12 @@ public function __construct(array $data = [])
if (array_key_exists('omitFromAddress', $data)) {
$this->setOmitFromAddress($data['omitFromAddress']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): string
diff --git a/src/Model/PatchTransactionRequest.php b/src/Model/PatchTransactionRequest.php
index 6819092c2..b01e76548 100644
--- a/src/Model/PatchTransactionRequest.php
+++ b/src/Model/PatchTransactionRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PatchTransactionRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customFields', $data)) {
$this->setCustomFields($data['customFields']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomFields(): ?array
diff --git a/src/Model/Pay4Fun.php b/src/Model/Pay4Fun.php
index 343af420a..9e0d0a285 100644
--- a/src/Model/Pay4Fun.php
+++ b/src/Model/Pay4Fun.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Pay4Fun extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Pay4Fun',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): Pay4FunCredentials
diff --git a/src/Model/Pay4FunCredentials.php b/src/Model/Pay4FunCredentials.php
index e556d52ae..152978cfc 100644
--- a/src/Model/Pay4FunCredentials.php
+++ b/src/Model/Pay4FunCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Pay4FunCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantKey', $data)) {
$this->setMerchantKey($data['merchantKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/PayCash.php b/src/Model/PayCash.php
index 59de43485..8c504a79f 100644
--- a/src/Model/PayCash.php
+++ b/src/Model/PayCash.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayCash extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayCash',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayCashCredentials
diff --git a/src/Model/PayCashCredentials.php b/src/Model/PayCashCredentials.php
index f96609a49..f252e7317 100644
--- a/src/Model/PayCashCredentials.php
+++ b/src/Model/PayCashCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayCashCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('emisor', $data)) {
$this->setEmisor($data['emisor']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('token', $data)) {
$this->setToken($data['token']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEmisor(): string
diff --git a/src/Model/PayClub.php b/src/Model/PayClub.php
index 915229175..2b661892f 100644
--- a/src/Model/PayClub.php
+++ b/src/Model/PayClub.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayClub extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayClub',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayClubCredentials
diff --git a/src/Model/PayClubCredentials.php b/src/Model/PayClubCredentials.php
index 889f9abce..cfc92c700 100644
--- a/src/Model/PayClubCredentials.php
+++ b/src/Model/PayClubCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayClubCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('signKey', $data)) {
$this->setSignKey($data['signKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/PayClubSettings.php b/src/Model/PayClubSettings.php
index bf75ed82a..e4a1a00e5 100644
--- a/src/Model/PayClubSettings.php
+++ b/src/Model/PayClubSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayClubSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('use3DSChannel', $data)) {
$this->setUse3DSChannel($data['use3DSChannel']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUse3DSChannel(): ?bool
diff --git a/src/Model/PayCom.php b/src/Model/PayCom.php
index 5a50c2b81..59642af0e 100644
--- a/src/Model/PayCom.php
+++ b/src/Model/PayCom.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayCom extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayCom',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayComCredentials
diff --git a/src/Model/PayComCredentials.php b/src/Model/PayComCredentials.php
index 854952603..fe2d03842 100644
--- a/src/Model/PayComCredentials.php
+++ b/src/Model/PayComCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayComCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/PayEcards.php b/src/Model/PayEcards.php
index 3a956b293..c10030870 100644
--- a/src/Model/PayEcards.php
+++ b/src/Model/PayEcards.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayEcards extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayEcards',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayEcardsCredentials
diff --git a/src/Model/PayEcardsCredentials.php b/src/Model/PayEcardsCredentials.php
index 10f547e6d..1c44bc1c6 100644
--- a/src/Model/PayEcardsCredentials.php
+++ b/src/Model/PayEcardsCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayEcardsCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientKey', $data)) {
$this->setClientKey($data['clientKey']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentUrl', $data)) {
$this->setPaymentUrl($data['paymentUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientKey(): string
diff --git a/src/Model/PayPal.php b/src/Model/PayPal.php
index 0479639c4..c6d5f5872 100644
--- a/src/Model/PayPal.php
+++ b/src/Model/PayPal.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayPal extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayPal',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ?PayPalCredentials
diff --git a/src/Model/PayPalAccount.php b/src/Model/PayPalAccount.php
index a29ccc94c..ad3f24914 100644
--- a/src/Model/PayPalAccount.php
+++ b/src/Model/PayPalAccount.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayPalAccount implements PaymentInstrument, PostPaymentInstrumentRequest
{
+ use HasMetadata;
+
public const STATUS_INACTIVE = 'inactive';
public const STATUS_ACTIVE = 'active';
@@ -27,7 +30,7 @@ class PayPalAccount implements PaymentInstrument, PostPaymentInstrumentRequest
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -74,11 +77,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/PayPalAccountEmbedded.php b/src/Model/PayPalAccountEmbedded.php
index 0f13bbf73..7b08804c3 100644
--- a/src/Model/PayPalAccountEmbedded.php
+++ b/src/Model/PayPalAccountEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayPalAccountEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('authTransaction', $data)) {
$this->setAuthTransaction($data['authTransaction']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAuthTransaction(): ?Transaction
diff --git a/src/Model/PayPalBillingAgreementFeature.php b/src/Model/PayPalBillingAgreementFeature.php
index 6174f9a77..0a5e936bc 100644
--- a/src/Model/PayPalBillingAgreementFeature.php
+++ b/src/Model/PayPalBillingAgreementFeature.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayPalBillingAgreementFeature implements ReadyToPayPayPalMethodFeature
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paypalMerchantId', $data)) {
$this->setPaypalMerchantId($data['paypalMerchantId']);
@@ -35,11 +38,12 @@ public function __construct(array $data = [])
if (array_key_exists('expirationTime', $data)) {
$this->setExpirationTime($data['expirationTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/PayPalCredentials.php b/src/Model/PayPalCredentials.php
index e6544bbdb..f231d8b41 100644
--- a/src/Model/PayPalCredentials.php
+++ b/src/Model/PayPalCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayPalCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('partnerId', $data)) {
$this->setPartnerId($data['partnerId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('partnerBnCode', $data)) {
$this->setPartnerBnCode($data['partnerBnCode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPartnerId(): ?string
diff --git a/src/Model/PayPalSettings.php b/src/Model/PayPalSettings.php
index 4dba2a30a..05ead5bb5 100644
--- a/src/Model/PayPalSettings.php
+++ b/src/Model/PayPalSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayPalSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('redirectUrl', $data)) {
$this->setRedirectUrl($data['redirectUrl']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('enableAlternativePaymentMethods', $data)) {
$this->setEnableAlternativePaymentMethods($data['enableAlternativePaymentMethods']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRedirectUrl(): string
diff --git a/src/Model/PayPalToken.php b/src/Model/PayPalToken.php
index c240a6666..d80a6b317 100644
--- a/src/Model/PayPalToken.php
+++ b/src/Model/PayPalToken.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayPalToken implements CompositeToken
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentInstrument', $data)) {
$this->setPaymentInstrument($data['paymentInstrument']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/PayPalTokenPaymentInstrument.php b/src/Model/PayPalTokenPaymentInstrument.php
index eb1835fd0..ac4088b64 100644
--- a/src/Model/PayPalTokenPaymentInstrument.php
+++ b/src/Model/PayPalTokenPaymentInstrument.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayPalTokenPaymentInstrument implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paypalMerchantId', $data)) {
$this->setPaypalMerchantId($data['paypalMerchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('billingAgreementToken', $data)) {
$this->setBillingAgreementToken($data['billingAgreementToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaypalMerchantId(): string
diff --git a/src/Model/PayRedeem.php b/src/Model/PayRedeem.php
index ce67eb6ba..680df82b9 100644
--- a/src/Model/PayRedeem.php
+++ b/src/Model/PayRedeem.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayRedeem extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayRedeem',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayRedeemCredentials
diff --git a/src/Model/PayRedeemCredentials.php b/src/Model/PayRedeemCredentials.php
index 5d8c34326..fc1fe2c13 100644
--- a/src/Model/PayRedeemCredentials.php
+++ b/src/Model/PayRedeemCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayRedeemCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiUser', $data)) {
$this->setApiUser($data['apiUser']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiUser(): string
diff --git a/src/Model/PayRetailers.php b/src/Model/PayRetailers.php
index 896f17ea7..323dbe593 100644
--- a/src/Model/PayRetailers.php
+++ b/src/Model/PayRetailers.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayRetailers extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayRetailers',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayRetailersCredentials
diff --git a/src/Model/PayRetailersCredentials.php b/src/Model/PayRetailersCredentials.php
index 068ea6561..efc27cc16 100644
--- a/src/Model/PayRetailersCredentials.php
+++ b/src/Model/PayRetailersCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayRetailersCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('shopId', $data)) {
$this->setShopId($data['shopId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getShopId(): string
diff --git a/src/Model/PayTabs.php b/src/Model/PayTabs.php
index 0a6893d5b..4c48e8ad4 100644
--- a/src/Model/PayTabs.php
+++ b/src/Model/PayTabs.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayTabs extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayTabs',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayTabsCredentials
diff --git a/src/Model/PayTabsCredentials.php b/src/Model/PayTabsCredentials.php
index c42046225..1fd4c33c0 100644
--- a/src/Model/PayTabsCredentials.php
+++ b/src/Model/PayTabsCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayTabsCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('profileId', $data)) {
$this->setProfileId($data['profileId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('serverKey', $data)) {
$this->setServerKey($data['serverKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getProfileId(): string
diff --git a/src/Model/PayTabsSettings.php b/src/Model/PayTabsSettings.php
index 21590e5ac..8642697e2 100644
--- a/src/Model/PayTabsSettings.php
+++ b/src/Model/PayTabsSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayTabsSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('baseUrl', $data)) {
$this->setBaseUrl($data['baseUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBaseUrl(): ?string
diff --git a/src/Model/PayU.php b/src/Model/PayU.php
index 8ebc10650..f22e2a99c 100644
--- a/src/Model/PayU.php
+++ b/src/Model/PayU.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayU extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayU',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayUCredentials
diff --git a/src/Model/PayUCredentials.php b/src/Model/PayUCredentials.php
index 0dbf8b9c6..c69bc2131 100644
--- a/src/Model/PayUCredentials.php
+++ b/src/Model/PayUCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayUCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantKey', $data)) {
$this->setMerchantKey($data['merchantKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantSalt', $data)) {
$this->setMerchantSalt($data['merchantSalt']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantKey(): string
diff --git a/src/Model/PayULatam.php b/src/Model/PayULatam.php
index f55212e7a..984e597c4 100644
--- a/src/Model/PayULatam.php
+++ b/src/Model/PayULatam.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PayULatam extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PayULatam',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayULatamCredentials
diff --git a/src/Model/PayULatamCredentials.php b/src/Model/PayULatamCredentials.php
index 90e114a40..f8aa31e3b 100644
--- a/src/Model/PayULatamCredentials.php
+++ b/src/Model/PayULatamCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayULatamCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Paybilt.php b/src/Model/Paybilt.php
index cf64e3d55..428980a01 100644
--- a/src/Model/Paybilt.php
+++ b/src/Model/Paybilt.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Paybilt extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Paybilt',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PaybiltCredentials
diff --git a/src/Model/PaybiltCredentials.php b/src/Model/PaybiltCredentials.php
index c2be3c254..75a15f726 100644
--- a/src/Model/PaybiltCredentials.php
+++ b/src/Model/PaybiltCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaybiltCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('tokenId', $data)) {
$this->setTokenId($data['tokenId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTokenId(): string
diff --git a/src/Model/PaybiltSettings.php b/src/Model/PaybiltSettings.php
index 5e0273923..464aa82ac 100644
--- a/src/Model/PaybiltSettings.php
+++ b/src/Model/PaybiltSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaybiltSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('delay', $data)) {
$this->setDelay($data['delay']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDelay(): ?int
diff --git a/src/Model/Paycly.php b/src/Model/Paycly.php
index de463072b..57a4c80b3 100644
--- a/src/Model/Paycly.php
+++ b/src/Model/Paycly.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Paycly extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Paycly',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayclyCredentials
diff --git a/src/Model/PayclyCredentials.php b/src/Model/PayclyCredentials.php
index 6061a1c9f..165261294 100644
--- a/src/Model/PayclyCredentials.php
+++ b/src/Model/PayclyCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayclyCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiToken', $data)) {
$this->setApiToken($data['apiToken']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('websiteId', $data)) {
$this->setWebsiteId($data['websiteId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiToken(): string
diff --git a/src/Model/Payeezy.php b/src/Model/Payeezy.php
index 5e71b6cdd..ae84ebf09 100644
--- a/src/Model/Payeezy.php
+++ b/src/Model/Payeezy.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Payeezy extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Payeezy',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayeezyCredentials
diff --git a/src/Model/PayeezyCredentials.php b/src/Model/PayeezyCredentials.php
index 2b0b8e858..bd3088779 100644
--- a/src/Model/PayeezyCredentials.php
+++ b/src/Model/PayeezyCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayeezyCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecret', $data)) {
$this->setApiSecret($data['apiSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Payflow.php b/src/Model/Payflow.php
index 52f7a66ff..c191a7169 100644
--- a/src/Model/Payflow.php
+++ b/src/Model/Payflow.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Payflow extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Payflow',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayflowCredentials
diff --git a/src/Model/PayflowCredentials.php b/src/Model/PayflowCredentials.php
index 2f8e512b2..82ef53daa 100644
--- a/src/Model/PayflowCredentials.php
+++ b/src/Model/PayflowCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayflowCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('user', $data)) {
$this->setUser($data['user']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUser(): string
diff --git a/src/Model/PaymenTechnologies.php b/src/Model/PaymenTechnologies.php
index 1b77861c6..d141c7a74 100644
--- a/src/Model/PaymenTechnologies.php
+++ b/src/Model/PaymenTechnologies.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymenTechnologies extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PaymenTechnologies',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PaymenTechnologiesCredentials
diff --git a/src/Model/PaymenTechnologiesCredentials.php b/src/Model/PaymenTechnologiesCredentials.php
index fa95f5a57..756a3fc5d 100644
--- a/src/Model/PaymenTechnologiesCredentials.php
+++ b/src/Model/PaymenTechnologiesCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymenTechnologiesCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('authenticateId', $data)) {
$this->setAuthenticateId($data['authenticateId']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAuthenticateId(): string
diff --git a/src/Model/PaymenTechnologiesSettings.php b/src/Model/PaymenTechnologiesSettings.php
index 68ed72ebd..1c4d20edf 100644
--- a/src/Model/PaymenTechnologiesSettings.php
+++ b/src/Model/PaymenTechnologiesSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymenTechnologiesSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('use3DSEndpoint', $data)) {
$this->setUse3DSEndpoint($data['use3DSEndpoint']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUse3DSEndpoint(): ?bool
diff --git a/src/Model/PaymentAsia.php b/src/Model/PaymentAsia.php
index e15b5f90e..0b2d256f8 100644
--- a/src/Model/PaymentAsia.php
+++ b/src/Model/PaymentAsia.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymentAsia extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PaymentAsia',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PaymentAsiaCredentials
diff --git a/src/Model/PaymentAsiaCredentials.php b/src/Model/PaymentAsiaCredentials.php
index 9ff5dfad6..7efc51eae 100644
--- a/src/Model/PaymentAsiaCredentials.php
+++ b/src/Model/PaymentAsiaCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymentAsiaCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/PaymentCard.php b/src/Model/PaymentCard.php
index ea6892605..53faeaace 100644
--- a/src/Model/PaymentCard.php
+++ b/src/Model/PaymentCard.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymentCard implements PaymentInstrument
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -67,7 +70,7 @@ class PaymentCard implements PaymentInstrument
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -156,11 +159,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/PaymentCardCreatePlain.php b/src/Model/PaymentCardCreatePlain.php
index 8493f8cac..7366ad9cf 100644
--- a/src/Model/PaymentCardCreatePlain.php
+++ b/src/Model/PaymentCardCreatePlain.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymentCardCreatePlain implements PostPaymentInstrumentRequest, PaymentInstruction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customerId', $data)) {
$this->setCustomerId($data['customerId']);
@@ -47,11 +51,12 @@ public function __construct(array $data = [])
if (array_key_exists('useAsBackup', $data)) {
$this->setUseAsBackup($data['useAsBackup']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/PaymentCardEmbedded.php b/src/Model/PaymentCardEmbedded.php
index 3a080cc0f..5a425e186 100644
--- a/src/Model/PaymentCardEmbedded.php
+++ b/src/Model/PaymentCardEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymentCardEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('authTransaction', $data)) {
$this->setAuthTransaction($data['authTransaction']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAuthTransaction(): ?Transaction
diff --git a/src/Model/PaymentCardFeatureFactory.php b/src/Model/PaymentCardFeatureFactory.php
index cb375927c..a81a37d57 100644
--- a/src/Model/PaymentCardFeatureFactory.php
+++ b/src/Model/PaymentCardFeatureFactory.php
@@ -18,12 +18,12 @@
class PaymentCardFeatureFactory
{
- public static function from(array $data = []): PaymentCardFeature
+ public static function from(array $data = [], array $metadata = []): PaymentCardFeature
{
return match ($data['name']) {
- 'Apple Pay' => ApplePayFeature::from($data),
- 'Google Pay' => GooglePayFeature::from($data),
- 'Samsung Pay' => SamsungPayFeature::from($data),
+ 'Apple Pay' => ApplePayFeature::from($data, $metadata),
+ 'Google Pay' => GooglePayFeature::from($data, $metadata),
+ 'Samsung Pay' => SamsungPayFeature::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/PaymentCardToken.php b/src/Model/PaymentCardToken.php
index b939d8823..971b8d218 100644
--- a/src/Model/PaymentCardToken.php
+++ b/src/Model/PaymentCardToken.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymentCardToken implements CompositeToken
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentInstrument', $data)) {
$this->setPaymentInstrument($data['paymentInstrument']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/PaymentCardTokenPaymentInstrument.php b/src/Model/PaymentCardTokenPaymentInstrument.php
index 9c713cc79..54f17d9ba 100644
--- a/src/Model/PaymentCardTokenPaymentInstrument.php
+++ b/src/Model/PaymentCardTokenPaymentInstrument.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymentCardTokenPaymentInstrument implements JsonSerializable
{
+ use HasMetadata;
+
public const BRAND_VISA = 'Visa';
public const BRAND_MASTER_CARD = 'MasterCard';
@@ -48,7 +51,7 @@ class PaymentCardTokenPaymentInstrument implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('pan', $data)) {
$this->setPan($data['pan']);
@@ -74,11 +77,12 @@ public function __construct(array $data = [])
if (array_key_exists('brand', $data)) {
$this->setBrand($data['brand']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPan(): ?string
diff --git a/src/Model/PaymentCardUpdatePlain.php b/src/Model/PaymentCardUpdatePlain.php
index 1b63684ea..f91e1bda1 100644
--- a/src/Model/PaymentCardUpdatePlain.php
+++ b/src/Model/PaymentCardUpdatePlain.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymentCardUpdatePlain implements PatchPaymentInstrumentRequest
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('cvv', $data)) {
$this->setCvv($data['cvv']);
@@ -41,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('useAsBackup', $data)) {
$this->setUseAsBackup($data['useAsBackup']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCvv(): ?string
diff --git a/src/Model/PaymentInstructionFactory.php b/src/Model/PaymentInstructionFactory.php
index 79601556b..f5cf42fe5 100644
--- a/src/Model/PaymentInstructionFactory.php
+++ b/src/Model/PaymentInstructionFactory.php
@@ -18,21 +18,21 @@
class PaymentInstructionFactory
{
- public static function from(array $data = []): PaymentInstruction
+ public static function from(array $data = [], array $metadata = []): PaymentInstruction
{
if (isset($data['paymentInstrumentId'])) {
- return PaymentInstructionInstrument::from($data);
+ return PaymentInstructionInstrument::from($data, $metadata);
}
if (isset($data['methods'])) {
- return PaymentInstructionMethods::from($data);
+ return PaymentInstructionMethods::from($data, $metadata);
}
if (isset($data['token'])) {
- return PaymentInstructionToken::from($data);
+ return PaymentInstructionToken::from($data, $metadata);
}
return match ($data['method']) {
- 'ach' => BankAccountCreatePlain::from($data),
- 'payment-card' => PaymentCardCreatePlain::from($data),
+ 'ach' => BankAccountCreatePlainFactory::from($data, $metadata),
+ 'payment-card' => PaymentCardCreatePlain::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/PaymentInstructionInstrument.php b/src/Model/PaymentInstructionInstrument.php
index bbe52716f..7b8ecdcc5 100644
--- a/src/Model/PaymentInstructionInstrument.php
+++ b/src/Model/PaymentInstructionInstrument.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymentInstructionInstrument implements PaymentInstruction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentInstrumentId', $data)) {
$this->setPaymentInstrumentId($data['paymentInstrumentId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentInstrumentId(): string
diff --git a/src/Model/PaymentInstructionMethods.php b/src/Model/PaymentInstructionMethods.php
index 52019760b..0c856b85c 100644
--- a/src/Model/PaymentInstructionMethods.php
+++ b/src/Model/PaymentInstructionMethods.php
@@ -14,17 +14,11 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymentInstructionMethods implements PaymentInstruction
{
- public const METHODS_PAYMENT_CARD = 'payment-card';
-
- public const METHODS_ACH = 'ach';
-
- public const METHODS_CASH = 'cash';
-
- public const METHODS_CHECK = 'check';
-
- public const METHODS_PAYPAL = 'paypal';
+ use HasMetadata;
public const METHODS_ADV_CASH = 'AdvCash';
@@ -374,6 +368,8 @@ class PaymentInstructionMethods implements PaymentInstruction
public const METHODS_VENUS_POINT = 'VenusPoint';
+ public const METHODS_VIVA = 'Viva';
+
public const METHODS_VOUCHER = 'voucher';
public const METHODS_VOUCHER2 = 'voucher-2';
@@ -408,7 +404,7 @@ class PaymentInstructionMethods implements PaymentInstruction
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('methods', $data)) {
$this->setMethods($data['methods']);
@@ -419,11 +415,12 @@ public function __construct(array $data = [])
if (array_key_exists('reference', $data)) {
$this->setReference($data['reference']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/PaymentInstructionToken.php b/src/Model/PaymentInstructionToken.php
index 4f94ee19f..74d64830c 100644
--- a/src/Model/PaymentInstructionToken.php
+++ b/src/Model/PaymentInstructionToken.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymentInstructionToken implements PaymentInstruction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('token', $data)) {
$this->setToken($data['token']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getToken(): string
diff --git a/src/Model/PaymentInstrumentCreateToken.php b/src/Model/PaymentInstrumentCreateToken.php
index 518d1c5db..f039d67f8 100644
--- a/src/Model/PaymentInstrumentCreateToken.php
+++ b/src/Model/PaymentInstrumentCreateToken.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymentInstrumentCreateToken implements PostPaymentInstrumentRequest
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customerId', $data)) {
$this->setCustomerId($data['customerId']);
@@ -32,11 +36,12 @@ public function __construct(array $data = [])
if (array_key_exists('useAsBackup', $data)) {
$this->setUseAsBackup($data['useAsBackup']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomerId(): string
diff --git a/src/Model/PaymentInstrumentFactory.php b/src/Model/PaymentInstrumentFactory.php
index 39de6d640..49175d748 100644
--- a/src/Model/PaymentInstrumentFactory.php
+++ b/src/Model/PaymentInstrumentFactory.php
@@ -18,153 +18,153 @@
class PaymentInstrumentFactory
{
- public static function from(array $data = []): PaymentInstrument
+ public static function from(array $data = [], array $metadata = []): PaymentInstrument
{
return match ($data['method']) {
- 'AdvCash' => AlternativeInstrument::from($data),
- 'Alfa-click' => AlternativeInstrument::from($data),
- 'Alipay' => AlternativeInstrument::from($data),
- 'AstroPay Card' => AlternativeInstrument::from($data),
- 'AstroPay-GO' => AlternativeInstrument::from($data),
- 'Baloto' => AlternativeInstrument::from($data),
- 'Bancontact' => AlternativeInstrument::from($data),
- 'Bancontact-mobile' => AlternativeInstrument::from($data),
- 'BankReferenced' => AlternativeInstrument::from($data),
- 'Beeline' => AlternativeInstrument::from($data),
- 'Belfius-direct-net' => AlternativeInstrument::from($data),
- 'Bizum' => AlternativeInstrument::from($data),
- 'Boleto' => AlternativeInstrument::from($data),
- 'CASHlib' => AlternativeInstrument::from($data),
- 'CODVoucher' => AlternativeInstrument::from($data),
- 'CashToCode' => AlternativeInstrument::from($data),
- 'China UnionPay' => AlternativeInstrument::from($data),
- 'Cleo' => AlternativeInstrument::from($data),
- 'Conekta-oxxo' => AlternativeInstrument::from($data),
- 'Cupon-de-pagos' => AlternativeInstrument::from($data),
- 'EPS' => AlternativeInstrument::from($data),
- 'Efecty' => AlternativeInstrument::from($data),
- 'FasterPay' => AlternativeInstrument::from($data),
- 'Flexepin' => AlternativeInstrument::from($data),
- 'Giropay' => AlternativeInstrument::from($data),
- 'Google Pay' => AlternativeInstrument::from($data),
- 'Gpaysafe' => AlternativeInstrument::from($data),
- 'ING-homepay' => AlternativeInstrument::from($data),
- 'INOVAPAY-pin' => AlternativeInstrument::from($data),
- 'INOVAPAY-wallet' => AlternativeInstrument::from($data),
- 'InstaDebit' => AlternativeInstrument::from($data),
- 'InstantPayments' => AlternativeInstrument::from($data),
- 'Interac' => AlternativeInstrument::from($data),
- 'Interac-eTransfer' => AlternativeInstrument::from($data),
- 'Interac-online' => AlternativeInstrument::from($data),
- 'Jeton' => AlternativeInstrument::from($data),
- 'KNOT' => AlternativeInstrument::from($data),
- 'Klarna' => AlternativeInstrument::from($data),
- 'MTS' => AlternativeInstrument::from($data),
- 'Matrix' => AlternativeInstrument::from($data),
- 'MaxiCash' => AlternativeInstrument::from($data),
- 'Megafon' => AlternativeInstrument::from($data),
- 'MiFinity-eWallet' => AlternativeInstrument::from($data),
- 'MuchBetter' => AlternativeInstrument::from($data),
- 'Multibanco' => AlternativeInstrument::from($data),
- 'Neosurf' => AlternativeInstrument::from($data),
- 'Netbanking' => AlternativeInstrument::from($data),
- 'Neteller' => AlternativeInstrument::from($data),
- 'Nordea-Solo' => AlternativeInstrument::from($data),
- 'OXXO' => AlternativeInstrument::from($data),
- 'OchaPay' => AlternativeInstrument::from($data),
- 'Onlineueberweisen' => AlternativeInstrument::from($data),
- 'P24' => AlternativeInstrument::from($data),
- 'POLi' => AlternativeInstrument::from($data),
- 'Pagadito' => AlternativeInstrument::from($data),
- 'PagoEffectivo' => AlternativeInstrument::from($data),
- 'Pagsmile-deposit-express' => AlternativeInstrument::from($data),
- 'Pagsmile-lottery' => AlternativeInstrument::from($data),
- 'Pay4Fun' => AlternativeInstrument::from($data),
- 'PayCash' => AlternativeInstrument::from($data),
- 'PayTabs' => AlternativeInstrument::from($data),
- 'Payeer' => AlternativeInstrument::from($data),
- 'PaymentAsia-crypto' => AlternativeInstrument::from($data),
- 'Paymero' => AlternativeInstrument::from($data),
- 'Paynote' => AlternativeInstrument::from($data),
- 'Paysafecard' => AlternativeInstrument::from($data),
- 'Paysafecash' => AlternativeInstrument::from($data),
- 'Perfect-money' => AlternativeInstrument::from($data),
- 'PhonePe' => AlternativeInstrument::from($data),
- 'Piastrix' => AlternativeInstrument::from($data),
- 'PinPay' => AlternativeInstrument::from($data),
- 'PostFinance-card' => AlternativeInstrument::from($data),
- 'PostFinance-e-finance' => AlternativeInstrument::from($data),
- 'QIWI' => AlternativeInstrument::from($data),
- 'QPay' => AlternativeInstrument::from($data),
- 'QQPay' => AlternativeInstrument::from($data),
- 'Resurs' => AlternativeInstrument::from($data),
- 'SEPA' => AlternativeInstrument::from($data),
- 'SMSVoucher' => AlternativeInstrument::from($data),
- 'SafetyPay' => AlternativeInstrument::from($data),
- 'Skrill' => AlternativeInstrument::from($data),
- 'Skrill Rapid Transfer' => AlternativeInstrument::from($data),
- 'Sofort' => AlternativeInstrument::from($data),
- 'SparkPay' => AlternativeInstrument::from($data),
- 'Tele2' => AlternativeInstrument::from($data),
- 'Terminaly-RF' => AlternativeInstrument::from($data),
- 'ToditoCash-card' => AlternativeInstrument::from($data),
- 'Trustly' => AlternativeInstrument::from($data),
- 'UPI' => AlternativeInstrument::from($data),
- 'UPayCard' => AlternativeInstrument::from($data),
- 'USD-coin' => AlternativeInstrument::from($data),
- 'VCreditos' => AlternativeInstrument::from($data),
- 'VenusPoint' => AlternativeInstrument::from($data),
- 'WeChat Pay' => AlternativeInstrument::from($data),
- 'Webmoney' => AlternativeInstrument::from($data),
- 'Webpay' => AlternativeInstrument::from($data),
- 'Webpay Card' => AlternativeInstrument::from($data),
- 'Webpay-2' => AlternativeInstrument::from($data),
- 'XPay-P2P' => AlternativeInstrument::from($data),
- 'XPay-QR' => AlternativeInstrument::from($data),
- 'Yandex-money' => AlternativeInstrument::from($data),
- 'Zimpler' => AlternativeInstrument::from($data),
- 'Zotapay' => AlternativeInstrument::from($data),
- 'bank-transfer' => AlternativeInstrument::from($data),
- 'bank-transfer-2' => AlternativeInstrument::from($data),
- 'bank-transfer-3' => AlternativeInstrument::from($data),
- 'bank-transfer-4' => AlternativeInstrument::from($data),
- 'bank-transfer-5' => AlternativeInstrument::from($data),
- 'bank-transfer-6' => AlternativeInstrument::from($data),
- 'bank-transfer-7' => AlternativeInstrument::from($data),
- 'bank-transfer-8' => AlternativeInstrument::from($data),
- 'bank-transfer-9' => AlternativeInstrument::from($data),
- 'bitcoin' => AlternativeInstrument::from($data),
- 'cash' => AlternativeInstrument::from($data),
- 'cash-deposit' => AlternativeInstrument::from($data),
- 'check' => AlternativeInstrument::from($data),
- 'cryptocurrency' => AlternativeInstrument::from($data),
- 'domestic-cards' => AlternativeInstrument::from($data),
- 'ePay.bg' => AlternativeInstrument::from($data),
- 'eZeeWallet' => AlternativeInstrument::from($data),
- 'ecoPayz' => AlternativeInstrument::from($data),
- 'ecoVoucher' => AlternativeInstrument::from($data),
- 'iDEAL' => AlternativeInstrument::from($data),
- 'iDebit' => AlternativeInstrument::from($data),
- 'iWallet' => AlternativeInstrument::from($data),
- 'instant-bank-transfer' => AlternativeInstrument::from($data),
- 'invoice' => AlternativeInstrument::from($data),
- 'jpay' => AlternativeInstrument::from($data),
- 'loonie' => AlternativeInstrument::from($data),
- 'miscellaneous' => AlternativeInstrument::from($data),
- 'online-bank-transfer' => AlternativeInstrument::from($data),
- 'oriental-wallet' => AlternativeInstrument::from($data),
- 'phone' => AlternativeInstrument::from($data),
- 'plaid-account' => AlternativeInstrument::from($data),
- 'rapyd-checkout' => AlternativeInstrument::from($data),
- 'swift-dbt' => AlternativeInstrument::from($data),
- 'voucher' => AlternativeInstrument::from($data),
- 'voucher-2' => AlternativeInstrument::from($data),
- 'voucher-3' => AlternativeInstrument::from($data),
- 'voucher-4' => AlternativeInstrument::from($data),
- 'ach' => BankAccount::from($data),
- 'Khelocard' => KhelocardCard::from($data),
- 'payment-card' => PaymentCard::from($data),
- 'paypal' => PayPalAccount::from($data),
+ 'AdvCash' => AlternativeInstrument::from($data, $metadata),
+ 'Alfa-click' => AlternativeInstrument::from($data, $metadata),
+ 'Alipay' => AlternativeInstrument::from($data, $metadata),
+ 'AstroPay Card' => AlternativeInstrument::from($data, $metadata),
+ 'AstroPay-GO' => AlternativeInstrument::from($data, $metadata),
+ 'Baloto' => AlternativeInstrument::from($data, $metadata),
+ 'Bancontact' => AlternativeInstrument::from($data, $metadata),
+ 'Bancontact-mobile' => AlternativeInstrument::from($data, $metadata),
+ 'BankReferenced' => AlternativeInstrument::from($data, $metadata),
+ 'Beeline' => AlternativeInstrument::from($data, $metadata),
+ 'Belfius-direct-net' => AlternativeInstrument::from($data, $metadata),
+ 'Bizum' => AlternativeInstrument::from($data, $metadata),
+ 'Boleto' => AlternativeInstrument::from($data, $metadata),
+ 'CASHlib' => AlternativeInstrument::from($data, $metadata),
+ 'CODVoucher' => AlternativeInstrument::from($data, $metadata),
+ 'CashToCode' => AlternativeInstrument::from($data, $metadata),
+ 'China UnionPay' => AlternativeInstrument::from($data, $metadata),
+ 'Cleo' => AlternativeInstrument::from($data, $metadata),
+ 'Conekta-oxxo' => AlternativeInstrument::from($data, $metadata),
+ 'Cupon-de-pagos' => AlternativeInstrument::from($data, $metadata),
+ 'EPS' => AlternativeInstrument::from($data, $metadata),
+ 'Efecty' => AlternativeInstrument::from($data, $metadata),
+ 'FasterPay' => AlternativeInstrument::from($data, $metadata),
+ 'Flexepin' => AlternativeInstrument::from($data, $metadata),
+ 'Giropay' => AlternativeInstrument::from($data, $metadata),
+ 'Google Pay' => AlternativeInstrument::from($data, $metadata),
+ 'Gpaysafe' => AlternativeInstrument::from($data, $metadata),
+ 'ING-homepay' => AlternativeInstrument::from($data, $metadata),
+ 'INOVAPAY-pin' => AlternativeInstrument::from($data, $metadata),
+ 'INOVAPAY-wallet' => AlternativeInstrument::from($data, $metadata),
+ 'InstaDebit' => AlternativeInstrument::from($data, $metadata),
+ 'InstantPayments' => AlternativeInstrument::from($data, $metadata),
+ 'Interac' => AlternativeInstrument::from($data, $metadata),
+ 'Interac-eTransfer' => AlternativeInstrument::from($data, $metadata),
+ 'Interac-online' => AlternativeInstrument::from($data, $metadata),
+ 'Jeton' => AlternativeInstrument::from($data, $metadata),
+ 'KNOT' => AlternativeInstrument::from($data, $metadata),
+ 'Klarna' => AlternativeInstrument::from($data, $metadata),
+ 'MTS' => AlternativeInstrument::from($data, $metadata),
+ 'Matrix' => AlternativeInstrument::from($data, $metadata),
+ 'MaxiCash' => AlternativeInstrument::from($data, $metadata),
+ 'Megafon' => AlternativeInstrument::from($data, $metadata),
+ 'MiFinity-eWallet' => AlternativeInstrument::from($data, $metadata),
+ 'MuchBetter' => AlternativeInstrument::from($data, $metadata),
+ 'Multibanco' => AlternativeInstrument::from($data, $metadata),
+ 'Neosurf' => AlternativeInstrument::from($data, $metadata),
+ 'Netbanking' => AlternativeInstrument::from($data, $metadata),
+ 'Neteller' => AlternativeInstrument::from($data, $metadata),
+ 'Nordea-Solo' => AlternativeInstrument::from($data, $metadata),
+ 'OXXO' => AlternativeInstrument::from($data, $metadata),
+ 'OchaPay' => AlternativeInstrument::from($data, $metadata),
+ 'Onlineueberweisen' => AlternativeInstrument::from($data, $metadata),
+ 'P24' => AlternativeInstrument::from($data, $metadata),
+ 'POLi' => AlternativeInstrument::from($data, $metadata),
+ 'Pagadito' => AlternativeInstrument::from($data, $metadata),
+ 'PagoEffectivo' => AlternativeInstrument::from($data, $metadata),
+ 'Pagsmile-deposit-express' => AlternativeInstrument::from($data, $metadata),
+ 'Pagsmile-lottery' => AlternativeInstrument::from($data, $metadata),
+ 'Pay4Fun' => AlternativeInstrument::from($data, $metadata),
+ 'PayCash' => AlternativeInstrument::from($data, $metadata),
+ 'PayTabs' => AlternativeInstrument::from($data, $metadata),
+ 'Payeer' => AlternativeInstrument::from($data, $metadata),
+ 'PaymentAsia-crypto' => AlternativeInstrument::from($data, $metadata),
+ 'Paymero' => AlternativeInstrument::from($data, $metadata),
+ 'Paynote' => AlternativeInstrument::from($data, $metadata),
+ 'Paysafecard' => AlternativeInstrument::from($data, $metadata),
+ 'Paysafecash' => AlternativeInstrument::from($data, $metadata),
+ 'Perfect-money' => AlternativeInstrument::from($data, $metadata),
+ 'PhonePe' => AlternativeInstrument::from($data, $metadata),
+ 'Piastrix' => AlternativeInstrument::from($data, $metadata),
+ 'PinPay' => AlternativeInstrument::from($data, $metadata),
+ 'PostFinance-card' => AlternativeInstrument::from($data, $metadata),
+ 'PostFinance-e-finance' => AlternativeInstrument::from($data, $metadata),
+ 'QIWI' => AlternativeInstrument::from($data, $metadata),
+ 'QPay' => AlternativeInstrument::from($data, $metadata),
+ 'QQPay' => AlternativeInstrument::from($data, $metadata),
+ 'Resurs' => AlternativeInstrument::from($data, $metadata),
+ 'SEPA' => AlternativeInstrument::from($data, $metadata),
+ 'SMSVoucher' => AlternativeInstrument::from($data, $metadata),
+ 'SafetyPay' => AlternativeInstrument::from($data, $metadata),
+ 'Skrill' => AlternativeInstrument::from($data, $metadata),
+ 'Skrill Rapid Transfer' => AlternativeInstrument::from($data, $metadata),
+ 'Sofort' => AlternativeInstrument::from($data, $metadata),
+ 'SparkPay' => AlternativeInstrument::from($data, $metadata),
+ 'Tele2' => AlternativeInstrument::from($data, $metadata),
+ 'Terminaly-RF' => AlternativeInstrument::from($data, $metadata),
+ 'ToditoCash-card' => AlternativeInstrument::from($data, $metadata),
+ 'Trustly' => AlternativeInstrument::from($data, $metadata),
+ 'UPI' => AlternativeInstrument::from($data, $metadata),
+ 'UPayCard' => AlternativeInstrument::from($data, $metadata),
+ 'USD-coin' => AlternativeInstrument::from($data, $metadata),
+ 'VCreditos' => AlternativeInstrument::from($data, $metadata),
+ 'VenusPoint' => AlternativeInstrument::from($data, $metadata),
+ 'WeChat Pay' => AlternativeInstrument::from($data, $metadata),
+ 'Webmoney' => AlternativeInstrument::from($data, $metadata),
+ 'Webpay' => AlternativeInstrument::from($data, $metadata),
+ 'Webpay Card' => AlternativeInstrument::from($data, $metadata),
+ 'Webpay-2' => AlternativeInstrument::from($data, $metadata),
+ 'XPay-P2P' => AlternativeInstrument::from($data, $metadata),
+ 'XPay-QR' => AlternativeInstrument::from($data, $metadata),
+ 'Yandex-money' => AlternativeInstrument::from($data, $metadata),
+ 'Zimpler' => AlternativeInstrument::from($data, $metadata),
+ 'Zotapay' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-2' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-3' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-4' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-5' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-6' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-7' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-8' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-9' => AlternativeInstrument::from($data, $metadata),
+ 'bitcoin' => AlternativeInstrument::from($data, $metadata),
+ 'cash' => AlternativeInstrument::from($data, $metadata),
+ 'cash-deposit' => AlternativeInstrument::from($data, $metadata),
+ 'check' => AlternativeInstrument::from($data, $metadata),
+ 'cryptocurrency' => AlternativeInstrument::from($data, $metadata),
+ 'domestic-cards' => AlternativeInstrument::from($data, $metadata),
+ 'ePay.bg' => AlternativeInstrument::from($data, $metadata),
+ 'eZeeWallet' => AlternativeInstrument::from($data, $metadata),
+ 'ecoPayz' => AlternativeInstrument::from($data, $metadata),
+ 'ecoVoucher' => AlternativeInstrument::from($data, $metadata),
+ 'iDEAL' => AlternativeInstrument::from($data, $metadata),
+ 'iDebit' => AlternativeInstrument::from($data, $metadata),
+ 'iWallet' => AlternativeInstrument::from($data, $metadata),
+ 'instant-bank-transfer' => AlternativeInstrument::from($data, $metadata),
+ 'invoice' => AlternativeInstrument::from($data, $metadata),
+ 'jpay' => AlternativeInstrument::from($data, $metadata),
+ 'loonie' => AlternativeInstrument::from($data, $metadata),
+ 'miscellaneous' => AlternativeInstrument::from($data, $metadata),
+ 'online-bank-transfer' => AlternativeInstrument::from($data, $metadata),
+ 'oriental-wallet' => AlternativeInstrument::from($data, $metadata),
+ 'phone' => AlternativeInstrument::from($data, $metadata),
+ 'plaid-account' => AlternativeInstrument::from($data, $metadata),
+ 'rapyd-checkout' => AlternativeInstrument::from($data, $metadata),
+ 'swift-dbt' => AlternativeInstrument::from($data, $metadata),
+ 'voucher' => AlternativeInstrument::from($data, $metadata),
+ 'voucher-2' => AlternativeInstrument::from($data, $metadata),
+ 'voucher-3' => AlternativeInstrument::from($data, $metadata),
+ 'voucher-4' => AlternativeInstrument::from($data, $metadata),
+ 'ach' => BankAccount::from($data, $metadata),
+ 'Khelocard' => KhelocardCard::from($data, $metadata),
+ 'payment-card' => PaymentCard::from($data, $metadata),
+ 'paypal' => PayPalAccount::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/PaymentInstrumentNameInquiry.php b/src/Model/PaymentInstrumentNameInquiry.php
index db80b530a..8a02f0922 100644
--- a/src/Model/PaymentInstrumentNameInquiry.php
+++ b/src/Model/PaymentInstrumentNameInquiry.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymentInstrumentNameInquiry implements JsonSerializable
{
+ use HasMetadata;
+
public const RESULT_FULL_MATCH = 'full-match';
public const RESULT_PARTIAL_MATCH = 'partial-match';
@@ -30,7 +33,7 @@ class PaymentInstrumentNameInquiry implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('gatewayAccountId', $data)) {
$this->setGatewayAccountId($data['gatewayAccountId']);
@@ -41,11 +44,12 @@ public function __construct(array $data = [])
if (array_key_exists('response', $data)) {
$this->setResponse($data['response']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getGatewayAccountId(): string
diff --git a/src/Model/PaymentInstrumentUpdateToken.php b/src/Model/PaymentInstrumentUpdateToken.php
index f0372f504..cb9e373de 100644
--- a/src/Model/PaymentInstrumentUpdateToken.php
+++ b/src/Model/PaymentInstrumentUpdateToken.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymentInstrumentUpdateToken implements PatchPaymentInstrumentRequest
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('token', $data)) {
$this->setToken($data['token']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('useAsBackup', $data)) {
$this->setUseAsBackup($data['useAsBackup']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getToken(): ?string
diff --git a/src/Model/PaymentMethodMetadata.php b/src/Model/PaymentMethodMetadata.php
index aae8e8e8d..de4f2fdae 100644
--- a/src/Model/PaymentMethodMetadata.php
+++ b/src/Model/PaymentMethodMetadata.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymentMethodMetadata implements JsonSerializable
{
+ use HasMetadata;
+
public const RELEVANT_BUSINESS_MODELS_B2_B = 'B2B';
public const RELEVANT_BUSINESS_MODELS_B2_C = 'B2C';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiName', $data)) {
$this->setApiName($data['apiName']);
@@ -77,11 +80,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiName(): string
diff --git a/src/Model/PaymentMethodMetadataSupportedCurrenciesFactory.php b/src/Model/PaymentMethodMetadataSupportedCurrenciesFactory.php
index 0d4574590..dc2095b9b 100644
--- a/src/Model/PaymentMethodMetadataSupportedCurrenciesFactory.php
+++ b/src/Model/PaymentMethodMetadataSupportedCurrenciesFactory.php
@@ -18,12 +18,12 @@
class PaymentMethodMetadataSupportedCurrenciesFactory
{
- public static function from(array $data = []): PaymentMethodMetadataSupportedCurrencies
+ public static function from(array $data = [], array $metadata = []): PaymentMethodMetadataSupportedCurrencies
{
return match ($data['mode']) {
- 'subset' => CurrenciesSubsetMetadata::from($data),
- 'all' => CurrenciesUnrestrictedMetadata::from($data),
- 'unknown' => CurrenciesUnrestrictedMetadata::from($data),
+ 'subset' => CurrenciesSubsetMetadata::from($data, $metadata),
+ 'all' => CurrenciesUnrestrictedMetadata::from($data, $metadata),
+ 'unknown' => CurrenciesUnrestrictedMetadata::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/PaymentMethodMetadataUx.php b/src/Model/PaymentMethodMetadataUx.php
index 7fbc33f25..fcfe855d9 100644
--- a/src/Model/PaymentMethodMetadataUx.php
+++ b/src/Model/PaymentMethodMetadataUx.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymentMethodMetadataUx implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('description', $data)) {
$this->setDescription($data['description']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDescription(): string
diff --git a/src/Model/PaymentsOS.php b/src/Model/PaymentsOS.php
index e6a3ab8b1..aa4577980 100644
--- a/src/Model/PaymentsOS.php
+++ b/src/Model/PaymentsOS.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PaymentsOS extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PaymentsOS',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PaymentsOSCredentials
diff --git a/src/Model/PaymentsOSCredentials.php b/src/Model/PaymentsOSCredentials.php
index 81383ef29..5000d5c82 100644
--- a/src/Model/PaymentsOSCredentials.php
+++ b/src/Model/PaymentsOSCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymentsOSCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('appId', $data)) {
$this->setAppId($data['appId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('privateKey', $data)) {
$this->setPrivateKey($data['privateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAppId(): string
diff --git a/src/Model/Paymero.php b/src/Model/Paymero.php
index 1e5416dca..b34c38857 100644
--- a/src/Model/Paymero.php
+++ b/src/Model/Paymero.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Paymero extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Paymero',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PaymeroCredentials
diff --git a/src/Model/PaymeroCredentials.php b/src/Model/PaymeroCredentials.php
index 5a800828c..d98b72f68 100644
--- a/src/Model/PaymeroCredentials.php
+++ b/src/Model/PaymeroCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymeroCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/PaymeroSettings.php b/src/Model/PaymeroSettings.php
index 560612d1e..4cf77ce1e 100644
--- a/src/Model/PaymeroSettings.php
+++ b/src/Model/PaymeroSettings.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaymeroSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const MAIN_CURRENCY_TRX = 'TRX';
public const MAIN_CURRENCY_ETH = 'ETH';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('targetCurrency', $data)) {
$this->setTargetCurrency($data['targetCurrency']);
@@ -35,11 +38,12 @@ public function __construct(array $data = [])
if (array_key_exists('amountExceeded', $data)) {
$this->setAmountExceeded($data['amountExceeded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTargetCurrency(): ?string
diff --git a/src/Model/Paynote.php b/src/Model/Paynote.php
index 311674643..f38ac4e80 100644
--- a/src/Model/Paynote.php
+++ b/src/Model/Paynote.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Paynote extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Paynote',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PaynoteCredentials
diff --git a/src/Model/PaynoteCredentials.php b/src/Model/PaynoteCredentials.php
index e6cdbea0b..7ab41e075 100644
--- a/src/Model/PaynoteCredentials.php
+++ b/src/Model/PaynoteCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaynoteCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublicKey(): string
diff --git a/src/Model/PayoutRequest.php b/src/Model/PayoutRequest.php
index 1f1fa74b5..c3c09b139 100644
--- a/src/Model/PayoutRequest.php
+++ b/src/Model/PayoutRequest.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayoutRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_INSTRUMENT_SELECTED = 'instrument-selected';
@@ -32,7 +35,7 @@ class PayoutRequest implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -61,6 +64,15 @@ public function __construct(array $data = [])
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
}
+ if (array_key_exists('blocked', $data)) {
+ $this->setBlocked($data['blocked']);
+ }
+ if (array_key_exists('blockReason', $data)) {
+ $this->setBlockReason($data['blockReason']);
+ }
+ if (array_key_exists('batchId', $data)) {
+ $this->setBatchId($data['batchId']);
+ }
if (array_key_exists('selectPaymentInstrumentUrl', $data)) {
$this->setSelectPaymentInstrumentUrl($data['selectPaymentInstrumentUrl']);
}
@@ -82,11 +94,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
@@ -180,6 +193,39 @@ public function getStatus(): ?string
return $this->fields['status'] ?? null;
}
+ public function getBlocked(): ?bool
+ {
+ return $this->fields['blocked'] ?? null;
+ }
+
+ public function setBlocked(null|bool $blocked): static
+ {
+ $this->fields['blocked'] = $blocked;
+
+ return $this;
+ }
+
+ public function getBlockReason(): ?PayoutRequestBlockReason
+ {
+ return $this->fields['blockReason'] ?? null;
+ }
+
+ public function setBlockReason(null|PayoutRequestBlockReason|array $blockReason): static
+ {
+ if ($blockReason !== null && !($blockReason instanceof PayoutRequestBlockReason)) {
+ $blockReason = PayoutRequestBlockReason::from($blockReason);
+ }
+
+ $this->fields['blockReason'] = $blockReason;
+
+ return $this;
+ }
+
+ public function getBatchId(): ?string
+ {
+ return $this->fields['batchId'] ?? null;
+ }
+
public function getSelectPaymentInstrumentUrl(): ?string
{
return $this->fields['selectPaymentInstrumentUrl'] ?? null;
@@ -269,6 +315,15 @@ public function jsonSerialize(): array
if (array_key_exists('status', $this->fields)) {
$data['status'] = $this->fields['status'];
}
+ if (array_key_exists('blocked', $this->fields)) {
+ $data['blocked'] = $this->fields['blocked'];
+ }
+ if (array_key_exists('blockReason', $this->fields)) {
+ $data['blockReason'] = $this->fields['blockReason']?->jsonSerialize();
+ }
+ if (array_key_exists('batchId', $this->fields)) {
+ $data['batchId'] = $this->fields['batchId'];
+ }
if (array_key_exists('selectPaymentInstrumentUrl', $this->fields)) {
$data['selectPaymentInstrumentUrl'] = $this->fields['selectPaymentInstrumentUrl'];
}
@@ -329,6 +384,13 @@ private function setStatus(null|string $status): static
return $this;
}
+ private function setBatchId(null|string $batchId): static
+ {
+ $this->fields['batchId'] = $batchId;
+
+ return $this;
+ }
+
private function setSelectPaymentInstrumentUrl(null|string $selectPaymentInstrumentUrl): static
{
$this->fields['selectPaymentInstrumentUrl'] = $selectPaymentInstrumentUrl;
diff --git a/src/Model/PayoutRequestAllocation.php b/src/Model/PayoutRequestAllocation.php
index b59ac0dd6..f568a8022 100644
--- a/src/Model/PayoutRequestAllocation.php
+++ b/src/Model/PayoutRequestAllocation.php
@@ -17,11 +17,398 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayoutRequestAllocation implements JsonSerializable
{
+ use HasMetadata;
+
+ public const PAYMENT_METHOD_ADV_CASH = 'AdvCash';
+
+ public const PAYMENT_METHOD_AERA = 'Aera';
+
+ public const PAYMENT_METHOD_AFFIRM = 'Affirm';
+
+ public const PAYMENT_METHOD_AFTERPAY = 'Afterpay';
+
+ public const PAYMENT_METHOD_AIRCASH = 'Aircash';
+
+ public const PAYMENT_METHOD_AIRPAY = 'Airpay';
+
+ public const PAYMENT_METHOD_ALFA_CLICK = 'Alfa-click';
+
+ public const PAYMENT_METHOD_ALIPAY = 'Alipay';
+
+ public const PAYMENT_METHOD_AMAZON_PAY = 'AmazonPay';
+
+ public const PAYMENT_METHOD_APPLE_PAY = 'Apple Pay';
+
+ public const PAYMENT_METHOD_ASTRO_PAY_CARD = 'AstroPay Card';
+
+ public const PAYMENT_METHOD_ASTRO_PAY_GO = 'AstroPay-GO';
+
+ public const PAYMENT_METHOD_BANK_SEND = 'BankSEND';
+
+ public const PAYMENT_METHOD_BANK_REFERENCED = 'BankReferenced';
+
+ public const PAYMENT_METHOD_BANK_TRANSFER = 'bank-transfer';
+
+ public const PAYMENT_METHOD_BANK_TRANSFER2 = 'bank-transfer-2';
+
+ public const PAYMENT_METHOD_BANK_TRANSFER3 = 'bank-transfer-3';
+
+ public const PAYMENT_METHOD_BANK_TRANSFER4 = 'bank-transfer-4';
+
+ public const PAYMENT_METHOD_BANK_TRANSFER5 = 'bank-transfer-5';
+
+ public const PAYMENT_METHOD_BANK_TRANSFER6 = 'bank-transfer-6';
+
+ public const PAYMENT_METHOD_BANK_TRANSFER7 = 'bank-transfer-7';
+
+ public const PAYMENT_METHOD_BANK_TRANSFER8 = 'bank-transfer-8';
+
+ public const PAYMENT_METHOD_BANK_TRANSFER9 = 'bank-transfer-9';
+
+ public const PAYMENT_METHOD_BALOTO = 'Baloto';
+
+ public const PAYMENT_METHOD_BEELINE = 'Beeline';
+
+ public const PAYMENT_METHOD_BELFIUS_DIRECT_NET = 'Belfius-direct-net';
+
+ public const PAYMENT_METHOD_BITCOIN = 'bitcoin';
+
+ public const PAYMENT_METHOD_BIZUM = 'Bizum';
+
+ public const PAYMENT_METHOD_BLIK = 'Blik';
+
+ public const PAYMENT_METHOD_BOLETO = 'Boleto';
+
+ public const PAYMENT_METHOD_BOLETO2 = 'Boleto-2';
+
+ public const PAYMENT_METHOD_BOLETO3 = 'Boleto-3';
+
+ public const PAYMENT_METHOD_CASH_DEPOSIT = 'cash-deposit';
+
+ public const PAYMENT_METHOD_CAS_HLIB = 'CASHlib';
+
+ public const PAYMENT_METHOD_CASH_TO_CODE = 'CashToCode';
+
+ public const PAYMENT_METHOD_CC_AVENUE = 'CCAvenue';
+
+ public const PAYMENT_METHOD_CHINA_UNION_PAY = 'China UnionPay';
+
+ public const PAYMENT_METHOD_CLEARPAY = 'Clearpay';
+
+ public const PAYMENT_METHOD_CLEO = 'Cleo';
+
+ public const PAYMENT_METHOD_COD_VOUCHER = 'CODVoucher';
+
+ public const PAYMENT_METHOD_CONEKTA_OXXO = 'Conekta-oxxo';
+
+ public const PAYMENT_METHOD_CONEKTA_SPEI = 'Conekta-spei';
+
+ public const PAYMENT_METHOD_CRYPTOCURRENCY = 'cryptocurrency';
+
+ public const PAYMENT_METHOD_CUPON_DE_PAGOS = 'Cupon-de-pagos';
+
+ public const PAYMENT_METHOD_CYBER_SOURCE = 'CyberSource';
+
+ public const PAYMENT_METHOD_DIMOCO_PAY_SMART = 'Dimoco-pay-smart';
+
+ public const PAYMENT_METHOD_DIRECTA24_CARD = 'Directa24Card';
+
+ public const PAYMENT_METHOD_DOMESTIC_CARDS = 'domestic-cards';
+
+ public const PAYMENT_METHOD_EFECTY = 'Efecty';
+
+ public const PAYMENT_METHOD_ECHECK = 'echeck';
+
+ public const PAYMENT_METHOD_ECO_PAYZ = 'ecoPayz';
+
+ public const PAYMENT_METHOD_ECO_PAYZ_TURKEY = 'ecoPayzTurkey';
+
+ public const PAYMENT_METHOD_ECO_VOUCHER = 'ecoVoucher';
+
+ public const PAYMENT_METHOD_EPS = 'EPS';
+
+ public const PAYMENT_METHOD_E_PAY_BG = 'ePay.bg';
+
+ public const PAYMENT_METHOD_ETHEREUM = 'Ethereum';
+
+ public const PAYMENT_METHOD_E_WALLET = 'e-wallet';
+
+ public const PAYMENT_METHOD_EZY_EFT = 'ezyEFT';
+
+ public const PAYMENT_METHOD_E_ZEE_WALLET = 'eZeeWallet';
+
+ public const PAYMENT_METHOD_FASTER_PAY = 'FasterPay';
+
+ public const PAYMENT_METHOD_FLEXEPIN = 'Flexepin';
+
+ public const PAYMENT_METHOD_GIROPAY = 'Giropay';
+
+ public const PAYMENT_METHOD_GOOGLE_PAY = 'Google Pay';
+
+ public const PAYMENT_METHOD_GPAYSAFE = 'Gpaysafe';
+
+ public const PAYMENT_METHOD_I_CASH_ONE_VOUCHER = 'iCashOne Voucher';
+
+ public const PAYMENT_METHOD_I_DEBIT = 'iDebit';
+
+ public const PAYMENT_METHOD_I_DEAL = 'iDEAL';
+
+ public const PAYMENT_METHOD_ING_HOMEPAY = 'ING-homepay';
+
+ public const PAYMENT_METHOD_INOVAPAY_PIN = 'INOVAPAY-pin';
+
+ public const PAYMENT_METHOD_INOVAPAY_WALLET = 'INOVAPAY-wallet';
+
+ public const PAYMENT_METHOD_INSTA_DEBIT = 'InstaDebit';
+
+ public const PAYMENT_METHOD_INSTANT_PAYMENTS = 'InstantPayments';
+
+ public const PAYMENT_METHOD_INSTANT_BANK_TRANSFER = 'instant-bank-transfer';
+
+ public const PAYMENT_METHOD_INTERAC_ONLINE = 'Interac-online';
+
+ public const PAYMENT_METHOD_INTERAC_E_TRANSFER = 'Interac-eTransfer';
+
+ public const PAYMENT_METHOD_INTERAC_EXPRESS_CONNECT = 'Interac-express-connect';
+
+ public const PAYMENT_METHOD_INTERAC = 'Interac';
+
+ public const PAYMENT_METHOD_INVOICE = 'invoice';
+
+ public const PAYMENT_METHOD_I_WALLET = 'iWallet';
+
+ public const PAYMENT_METHOD_JETON = 'Jeton';
+
+ public const PAYMENT_METHOD_JETON_CASH = 'JetonCash';
+
+ public const PAYMENT_METHOD_JPAY = 'jpay';
+
+ public const PAYMENT_METHOD_KAKAO_PAY = 'KakaoPay';
+
+ public const PAYMENT_METHOD_KHELOCARD = 'Khelocard';
+
+ public const PAYMENT_METHOD_KLARNA = 'Klarna';
+
+ public const PAYMENT_METHOD_KNOT = 'KNOT';
+
+ public const PAYMENT_METHOD_LITECOIN = 'Litecoin';
+
+ public const PAYMENT_METHOD_LOONIE = 'loonie';
+
+ public const PAYMENT_METHOD_LPG_ONLINE = 'LPG-online';
+
+ public const PAYMENT_METHOD_LPG_PAYMENT_CARD = 'LPG-payment-card';
+
+ public const PAYMENT_METHOD_MATRIX = 'Matrix';
+
+ public const PAYMENT_METHOD_MAXI_CASH = 'MaxiCash';
+
+ public const PAYMENT_METHOD_MEGAFON = 'Megafon';
+
+ public const PAYMENT_METHOD_MERCADO_PAGO = 'MercadoPago';
+
+ public const PAYMENT_METHOD_MI_FINITY_E_WALLET = 'MiFinity-eWallet';
+
+ public const PAYMENT_METHOD_MISCELLANEOUS = 'miscellaneous';
+
+ public const PAYMENT_METHOD_MOBILE_PAY = 'MobilePay';
+
+ public const PAYMENT_METHOD_MULTIBANCO = 'Multibanco';
+
+ public const PAYMENT_METHOD_BANCONTACT = 'Bancontact';
+
+ public const PAYMENT_METHOD_BANCONTACT_MOBILE = 'Bancontact-mobile';
+
+ public const PAYMENT_METHOD_MTS = 'MTS';
+
+ public const PAYMENT_METHOD_MUCH_BETTER = 'MuchBetter';
+
+ public const PAYMENT_METHOD_MUCH_BETTER_VOUCHER = 'MuchBetterVoucher';
+
+ public const PAYMENT_METHOD_MY_FATOORAH = 'MyFatoorah';
+
+ public const PAYMENT_METHOD_NEOSURF = 'Neosurf';
+
+ public const PAYMENT_METHOD_NETBANKING = 'Netbanking';
+
+ public const PAYMENT_METHOD_NETELLER = 'Neteller';
+
+ public const PAYMENT_METHOD_NORDEA_SOLO = 'Nordea-Solo';
+
+ public const PAYMENT_METHOD_NORDIK_COIN = 'NordikCoin';
+
+ public const PAYMENT_METHOD_OCHA_PAY = 'OchaPay';
+
+ public const PAYMENT_METHOD_ONLINE_BANK_TRANSFER = 'online-bank-transfer';
+
+ public const PAYMENT_METHOD_ONLINEUEBERWEISEN = 'Onlineueberweisen';
+
+ public const PAYMENT_METHOD_ORIENTAL_WALLET = 'oriental-wallet';
+
+ public const PAYMENT_METHOD_OXXO = 'OXXO';
+
+ public const PAYMENT_METHOD_P24 = 'P24';
+
+ public const PAYMENT_METHOD_PAGADITO = 'Pagadito';
+
+ public const PAYMENT_METHOD_PAGO_EFFECTIVO = 'PagoEffectivo';
+
+ public const PAYMENT_METHOD_PAGSMILE_LOTTERY = 'Pagsmile-lottery';
+
+ public const PAYMENT_METHOD_PAGSMILE_DEPOSIT_EXPRESS = 'Pagsmile-deposit-express';
+
+ public const PAYMENT_METHOD_PAY_CASH = 'PayCash';
+
+ public const PAYMENT_METHOD_PAYCO = 'Payco';
+
+ public const PAYMENT_METHOD_PAYEER = 'Payeer';
+
+ public const PAYMENT_METHOD_PAYMENT_ASIA_CRYPTO = 'PaymentAsia-crypto';
+
+ public const PAYMENT_METHOD_PAYSAFECARD = 'Paysafecard';
+
+ public const PAYMENT_METHOD_PAY_TABS = 'PayTabs';
+
+ public const PAYMENT_METHOD_PAY4_FUN = 'Pay4Fun';
+
+ public const PAYMENT_METHOD_PAYNOTE = 'Paynote';
+
+ public const PAYMENT_METHOD_PAYMERO = 'Paymero';
+
+ public const PAYMENT_METHOD_PAYMERO_QR = 'Paymero-QR';
+
+ public const PAYMENT_METHOD_PAY_U = 'PayU';
+
+ public const PAYMENT_METHOD_PAY_U_LATAM = 'PayULatam';
+
+ public const PAYMENT_METHOD_PERFECT_MONEY = 'Perfect-money';
+
+ public const PAYMENT_METHOD_PIASTRIX = 'Piastrix';
+
+ public const PAYMENT_METHOD_PIX = 'PIX';
+
+ public const PAYMENT_METHOD_PIN_PAY = 'PinPay';
+
+ public const PAYMENT_METHOD_PHONE = 'phone';
+
+ public const PAYMENT_METHOD_PHONE_PE = 'PhonePe';
+
+ public const PAYMENT_METHOD_PO_LI = 'POLi';
+
+ public const PAYMENT_METHOD_POST_FINANCE_CARD = 'PostFinance-card';
+
+ public const PAYMENT_METHOD_POST_FINANCE_E_FINANCE = 'PostFinance-e-finance';
+
+ public const PAYMENT_METHOD_QIWI = 'QIWI';
+
+ public const PAYMENT_METHOD_Q_PAY = 'QPay';
+
+ public const PAYMENT_METHOD_QQ_PAY = 'QQPay';
+
+ public const PAYMENT_METHOD_RAPYD_CHECKOUT = 'rapyd-checkout';
+
+ public const PAYMENT_METHOD_REBILLY_HOSTED_PAYMENT_FORM = 'rebilly-hosted-payment-form';
+
+ public const PAYMENT_METHOD_RESURS = 'Resurs';
+
+ public const PAYMENT_METHOD_REVERSE_WITHDRAWAL = 'reverse-withdrawal';
+
+ public const PAYMENT_METHOD_RIPPLE = 'Ripple';
+
+ public const PAYMENT_METHOD_SAFETY_PAY = 'SafetyPay';
+
+ public const PAYMENT_METHOD_SAMSUNG_PAY = 'Samsung Pay';
+
+ public const PAYMENT_METHOD_SEPA = 'SEPA';
+
+ public const PAYMENT_METHOD_SIIRTO = 'Siirto';
+
+ public const PAYMENT_METHOD_SKRILL = 'Skrill';
+
+ public const PAYMENT_METHOD_SKRILL_RAPID_TRANSFER = 'Skrill Rapid Transfer';
+
+ public const PAYMENT_METHOD_SMS_VOUCHER = 'SMSVoucher';
+
+ public const PAYMENT_METHOD_SOFORT = 'Sofort';
+
+ public const PAYMENT_METHOD_SPARK_PAY = 'SparkPay';
+
+ public const PAYMENT_METHOD_SPEI = 'SPEI';
+
+ public const PAYMENT_METHOD_SWIFT_DBT = 'swift-dbt';
+
+ public const PAYMENT_METHOD_TELE2 = 'Tele2';
+
+ public const PAYMENT_METHOD_TELR = 'Telr';
+
+ public const PAYMENT_METHOD_TERMINALY_RF = 'Terminaly-RF';
+
+ public const PAYMENT_METHOD_TETHER = 'Tether';
+
+ public const PAYMENT_METHOD_TODITO_CASH_CARD = 'ToditoCash-card';
+
+ public const PAYMENT_METHOD_TRUSTLY = 'Trustly';
+
+ public const PAYMENT_METHOD_TUPAY = 'Tupay';
+
+ public const PAYMENT_METHOD_TWINT = 'TWINT';
+
+ public const PAYMENT_METHOD_UNI_CRYPT = 'UniCrypt';
+
+ public const PAYMENT_METHOD_U_PAY_CARD = 'UPayCard';
+
+ public const PAYMENT_METHOD_UPI = 'UPI';
+
+ public const PAYMENT_METHOD_USD_COIN = 'USD-coin';
+
+ public const PAYMENT_METHOD_V_CREDITOS = 'VCreditos';
+
+ public const PAYMENT_METHOD_VEGA_WALLET = 'VegaWallet';
+
+ public const PAYMENT_METHOD_VENUS_POINT = 'VenusPoint';
+
+ public const PAYMENT_METHOD_VIVA = 'Viva';
+
+ public const PAYMENT_METHOD_VOUCHER = 'voucher';
+
+ public const PAYMENT_METHOD_VOUCHER2 = 'voucher-2';
+
+ public const PAYMENT_METHOD_VOUCHER3 = 'voucher-3';
+
+ public const PAYMENT_METHOD_VOUCHER4 = 'voucher-4';
+
+ public const PAYMENT_METHOD_WALLET88 = 'Wallet88';
+
+ public const PAYMENT_METHOD_WEBMONEY = 'Webmoney';
+
+ public const PAYMENT_METHOD_WEBPAY = 'Webpay';
+
+ public const PAYMENT_METHOD_WEBPAY2 = 'Webpay-2';
+
+ public const PAYMENT_METHOD_WEBPAY_CARD = 'Webpay Card';
+
+ public const PAYMENT_METHOD_WE_CHAT_PAY = 'WeChat Pay';
+
+ public const PAYMENT_METHOD_X_PAY_P2_P = 'XPay-P2P';
+
+ public const PAYMENT_METHOD_X_PAY_QR = 'XPay-QR';
+
+ public const PAYMENT_METHOD_YANDEX_MONEY = 'Yandex-money';
+
+ public const PAYMENT_METHOD_ZOTAPAY = 'Zotapay';
+
+ public const PAYMENT_METHOD_ZIMPLER = 'Zimpler';
+
+ public const PAYMENT_METHOD_ZIP = 'Zip';
+
public const STATUS_PENDING = 'pending';
+ public const STATUS_QUEUED = 'queued';
+
public const STATUS_PROCESSING = 'processing';
public const STATUS_COMPLETED = 'completed';
@@ -30,9 +417,55 @@ class PayoutRequestAllocation implements JsonSerializable
public const STATUS_CANCELED = 'canceled';
+ public const STATUS_DECLINED = 'declined';
+
+ public const TRANSACTION_RESULT_ABANDONED = 'abandoned';
+
+ public const TRANSACTION_RESULT_APPROVED = 'approved';
+
+ public const TRANSACTION_RESULT_CANCELED = 'canceled';
+
+ public const TRANSACTION_RESULT_DECLINED = 'declined';
+
+ public const TRANSACTION_RESULT_UNKNOWN = 'unknown';
+
+ public const TRANSACTION_RESULT_NULL = 'null';
+
+ public const TRANSACTION_STATUS_COMPLETED = 'completed';
+
+ public const TRANSACTION_STATUS_CONN_ERROR = 'conn-error';
+
+ public const TRANSACTION_STATUS_DISPUTED = 'disputed';
+
+ public const TRANSACTION_STATUS_NEVER_SENT = 'never-sent';
+
+ public const TRANSACTION_STATUS_OFFSITE = 'offsite';
+
+ public const TRANSACTION_STATUS_PARTIALLY_REFUNDED = 'partially-refunded';
+
+ public const TRANSACTION_STATUS_PENDING = 'pending';
+
+ public const TRANSACTION_STATUS_REFUNDED = 'refunded';
+
+ public const TRANSACTION_STATUS_SENDING = 'sending';
+
+ public const TRANSACTION_STATUS_TIMEOUT = 'timeout';
+
+ public const TRANSACTION_STATUS_VOIDED = 'voided';
+
+ public const TRANSACTION_STATUS_WAITING_APPROVAL = 'waiting-approval';
+
+ public const TRANSACTION_STATUS_WAITING_CAPTURE = 'waiting-capture';
+
+ public const TRANSACTION_STATUS_WAITING_GATEWAY = 'waiting-gateway';
+
+ public const TRANSACTION_STATUS_WAITING_REFUND = 'waiting-refund';
+
+ public const TRANSACTION_STATUS_NULL = 'null';
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -40,9 +473,15 @@ public function __construct(array $data = [])
if (array_key_exists('payoutRequestId', $data)) {
$this->setPayoutRequestId($data['payoutRequestId']);
}
+ if (array_key_exists('batchId', $data)) {
+ $this->setBatchId($data['batchId']);
+ }
if (array_key_exists('paymentInstrumentId', $data)) {
$this->setPaymentInstrumentId($data['paymentInstrumentId']);
}
+ if (array_key_exists('paymentMethod', $data)) {
+ $this->setPaymentMethod($data['paymentMethod']);
+ }
if (array_key_exists('gatewayAccountId', $data)) {
$this->setGatewayAccountId($data['gatewayAccountId']);
}
@@ -61,6 +500,12 @@ public function __construct(array $data = [])
if (array_key_exists('transactionId', $data)) {
$this->setTransactionId($data['transactionId']);
}
+ if (array_key_exists('transactionResult', $data)) {
+ $this->setTransactionResult($data['transactionResult']);
+ }
+ if (array_key_exists('transactionStatus', $data)) {
+ $this->setTransactionStatus($data['transactionStatus']);
+ }
if (array_key_exists('createdTime', $data)) {
$this->setCreatedTime($data['createdTime']);
}
@@ -70,11 +515,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
@@ -87,6 +533,11 @@ public function getPayoutRequestId(): string
return $this->fields['payoutRequestId'];
}
+ public function getBatchId(): ?string
+ {
+ return $this->fields['batchId'] ?? null;
+ }
+
public function getPaymentInstrumentId(): string
{
return $this->fields['paymentInstrumentId'];
@@ -99,6 +550,11 @@ public function setPaymentInstrumentId(string $paymentInstrumentId): static
return $this;
}
+ public function getPaymentMethod(): ?string
+ {
+ return $this->fields['paymentMethod'] ?? null;
+ }
+
public function getGatewayAccountId(): string
{
return $this->fields['gatewayAccountId'];
@@ -168,6 +624,16 @@ public function getTransactionId(): ?string
return $this->fields['transactionId'] ?? null;
}
+ public function getTransactionResult(): ?string
+ {
+ return $this->fields['transactionResult'] ?? null;
+ }
+
+ public function getTransactionStatus(): ?string
+ {
+ return $this->fields['transactionStatus'] ?? null;
+ }
+
public function getCreatedTime(): ?DateTimeImmutable
{
return $this->fields['createdTime'] ?? null;
@@ -195,9 +661,15 @@ public function jsonSerialize(): array
if (array_key_exists('payoutRequestId', $this->fields)) {
$data['payoutRequestId'] = $this->fields['payoutRequestId'];
}
+ if (array_key_exists('batchId', $this->fields)) {
+ $data['batchId'] = $this->fields['batchId'];
+ }
if (array_key_exists('paymentInstrumentId', $this->fields)) {
$data['paymentInstrumentId'] = $this->fields['paymentInstrumentId'];
}
+ if (array_key_exists('paymentMethod', $this->fields)) {
+ $data['paymentMethod'] = $this->fields['paymentMethod'];
+ }
if (array_key_exists('gatewayAccountId', $this->fields)) {
$data['gatewayAccountId'] = $this->fields['gatewayAccountId'];
}
@@ -216,6 +688,12 @@ public function jsonSerialize(): array
if (array_key_exists('transactionId', $this->fields)) {
$data['transactionId'] = $this->fields['transactionId'];
}
+ if (array_key_exists('transactionResult', $this->fields)) {
+ $data['transactionResult'] = $this->fields['transactionResult'];
+ }
+ if (array_key_exists('transactionStatus', $this->fields)) {
+ $data['transactionStatus'] = $this->fields['transactionStatus'];
+ }
if (array_key_exists('createdTime', $this->fields)) {
$data['createdTime'] = $this->fields['createdTime']?->format(DateTimeInterface::RFC3339);
}
@@ -248,6 +726,20 @@ private function setPayoutRequestId(string $payoutRequestId): static
return $this;
}
+ private function setBatchId(null|string $batchId): static
+ {
+ $this->fields['batchId'] = $batchId;
+
+ return $this;
+ }
+
+ private function setPaymentMethod(null|string $paymentMethod): static
+ {
+ $this->fields['paymentMethod'] = $paymentMethod;
+
+ return $this;
+ }
+
private function setTransactionId(null|string $transactionId): static
{
$this->fields['transactionId'] = $transactionId;
@@ -255,6 +747,20 @@ private function setTransactionId(null|string $transactionId): static
return $this;
}
+ private function setTransactionResult(null|string $transactionResult): static
+ {
+ $this->fields['transactionResult'] = $transactionResult;
+
+ return $this;
+ }
+
+ private function setTransactionStatus(null|string $transactionStatus): static
+ {
+ $this->fields['transactionStatus'] = $transactionStatus;
+
+ return $this;
+ }
+
private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
{
if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
diff --git a/src/Model/PayoutRequestAllocations.php b/src/Model/PayoutRequestAllocations.php
index 67c216e2b..4b4fabb58 100644
--- a/src/Model/PayoutRequestAllocations.php
+++ b/src/Model/PayoutRequestAllocations.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayoutRequestAllocations implements JsonSerializable
{
+ use HasMetadata;
+
public const TRANSACTION_RESULT_ABANDONED = 'abandoned';
public const TRANSACTION_RESULT_APPROVED = 'approved';
@@ -30,16 +33,6 @@ class PayoutRequestAllocations implements JsonSerializable
public const TRANSACTION_RESULT_UNKNOWN = 'unknown';
- public const METHOD_PAYMENT_CARD = 'payment-card';
-
- public const METHOD_ACH = 'ach';
-
- public const METHOD_CASH = 'cash';
-
- public const METHOD_CHECK = 'check';
-
- public const METHOD_PAYPAL = 'paypal';
-
public const METHOD_ADV_CASH = 'AdvCash';
public const METHOD_AERA = 'Aera';
@@ -388,6 +381,8 @@ class PayoutRequestAllocations implements JsonSerializable
public const METHOD_VENUS_POINT = 'VenusPoint';
+ public const METHOD_VIVA = 'Viva';
+
public const METHOD_VOUCHER = 'voucher';
public const METHOD_VOUCHER2 = 'voucher-2';
@@ -848,6 +843,8 @@ class PayoutRequestAllocations implements JsonSerializable
public const GATEWAY_NAME_VEGA_WALLET = 'VegaWallet';
+ public const GATEWAY_NAME_VIVA = 'Viva';
+
public const GATEWAY_NAME_WALLET88 = 'Wallet88';
public const GATEWAY_NAME_WALPAY = 'Walpay';
@@ -868,7 +865,7 @@ class PayoutRequestAllocations implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactionId', $data)) {
$this->setTransactionId($data['transactionId']);
@@ -897,11 +894,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTransactionId(): ?string
diff --git a/src/Model/PayoutRequestAllocationsDataExport.php b/src/Model/PayoutRequestAllocationsDataExport.php
new file mode 100644
index 000000000..93a24ce7b
--- /dev/null
+++ b/src/Model/PayoutRequestAllocationsDataExport.php
@@ -0,0 +1,428 @@
+setId($data['id']);
+ }
+ if (array_key_exists('name', $data)) {
+ $this->setName($data['name']);
+ }
+ if (array_key_exists('format', $data)) {
+ $this->setFormat($data['format']);
+ }
+ if (array_key_exists('arguments', $data)) {
+ $this->setArguments($data['arguments']);
+ }
+ if (array_key_exists('emailNotification', $data)) {
+ $this->setEmailNotification($data['emailNotification']);
+ }
+ if (array_key_exists('fields', $data)) {
+ $this->setFields($data['fields']);
+ }
+ if (array_key_exists('recurring', $data)) {
+ $this->setRecurring($data['recurring']);
+ }
+ if (array_key_exists('userId', $data)) {
+ $this->setUserId($data['userId']);
+ }
+ if (array_key_exists('fileId', $data)) {
+ $this->setFileId($data['fileId']);
+ }
+ if (array_key_exists('recordCount', $data)) {
+ $this->setRecordCount($data['recordCount']);
+ }
+ if (array_key_exists('scheduledTime', $data)) {
+ $this->setScheduledTime($data['scheduledTime']);
+ }
+ if (array_key_exists('createdTime', $data)) {
+ $this->setCreatedTime($data['createdTime']);
+ }
+ if (array_key_exists('updatedTime', $data)) {
+ $this->setUpdatedTime($data['updatedTime']);
+ }
+ if (array_key_exists('status', $data)) {
+ $this->setStatus($data['status']);
+ }
+ if (array_key_exists('dateRange', $data)) {
+ $this->setDateRange($data['dateRange']);
+ }
+ if (array_key_exists('_links', $data)) {
+ $this->setLinks($data['_links']);
+ }
+ if (array_key_exists('_embedded', $data)) {
+ $this->setEmbedded($data['_embedded']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getResource(): string
+ {
+ return 'payoutRequestAllocations';
+ }
+
+ public function getId(): ?string
+ {
+ return $this->fields['id'] ?? null;
+ }
+
+ public function getName(): string
+ {
+ return $this->fields['name'];
+ }
+
+ public function setName(string $name): static
+ {
+ $this->fields['name'] = $name;
+
+ return $this;
+ }
+
+ public function getFormat(): string
+ {
+ return $this->fields['format'];
+ }
+
+ public function setFormat(string $format): static
+ {
+ $this->fields['format'] = $format;
+
+ return $this;
+ }
+
+ public function getArguments(): ?DataExportArguments
+ {
+ return $this->fields['arguments'] ?? null;
+ }
+
+ public function setArguments(null|DataExportArguments|array $arguments): static
+ {
+ if ($arguments !== null && !($arguments instanceof DataExportArguments)) {
+ $arguments = DataExportArguments::from($arguments);
+ }
+
+ $this->fields['arguments'] = $arguments;
+
+ return $this;
+ }
+
+ /**
+ * @return null|string[]
+ */
+ public function getEmailNotification(): ?array
+ {
+ return $this->fields['emailNotification'] ?? null;
+ }
+
+ /**
+ * @param null|string[] $emailNotification
+ */
+ public function setEmailNotification(null|array $emailNotification): static
+ {
+ $this->fields['emailNotification'] = $emailNotification;
+
+ return $this;
+ }
+
+ /**
+ * @return null|string[]
+ */
+ public function getFields(): ?array
+ {
+ return $this->fields['fields'] ?? null;
+ }
+
+ /**
+ * @param null|string[] $fields
+ */
+ public function setFields(null|array $fields): static
+ {
+ $this->fields['fields'] = $fields;
+
+ return $this;
+ }
+
+ public function getRecurring(): ?DataExportRecurring
+ {
+ return $this->fields['recurring'] ?? null;
+ }
+
+ public function setRecurring(null|DataExportRecurring|array $recurring): static
+ {
+ if ($recurring !== null && !($recurring instanceof DataExportRecurring)) {
+ $recurring = DataExportRecurring::from($recurring);
+ }
+
+ $this->fields['recurring'] = $recurring;
+
+ return $this;
+ }
+
+ public function getUserId(): ?string
+ {
+ return $this->fields['userId'] ?? null;
+ }
+
+ public function getFileId(): ?string
+ {
+ return $this->fields['fileId'] ?? null;
+ }
+
+ public function getRecordCount(): ?int
+ {
+ return $this->fields['recordCount'] ?? null;
+ }
+
+ public function getScheduledTime(): ?DateTimeImmutable
+ {
+ return $this->fields['scheduledTime'] ?? null;
+ }
+
+ public function getCreatedTime(): ?DateTimeImmutable
+ {
+ return $this->fields['createdTime'] ?? null;
+ }
+
+ public function getUpdatedTime(): ?DateTimeImmutable
+ {
+ return $this->fields['updatedTime'] ?? null;
+ }
+
+ public function getStatus(): ?string
+ {
+ return $this->fields['status'] ?? null;
+ }
+
+ public function getDateRange(): ?PayoutRequestAllocationsDataExportDateRange
+ {
+ return $this->fields['dateRange'] ?? null;
+ }
+
+ public function setDateRange(null|PayoutRequestAllocationsDataExportDateRange|array $dateRange): static
+ {
+ if ($dateRange !== null && !($dateRange instanceof PayoutRequestAllocationsDataExportDateRange)) {
+ $dateRange = PayoutRequestAllocationsDataExportDateRange::from($dateRange);
+ }
+
+ $this->fields['dateRange'] = $dateRange;
+
+ return $this;
+ }
+
+ /**
+ * @return null|ResourceLink[]
+ */
+ public function getLinks(): ?array
+ {
+ return $this->fields['_links'] ?? null;
+ }
+
+ public function getEmbedded(): ?PayoutRequestAllocationsDataExportEmbedded
+ {
+ return $this->fields['_embedded'] ?? null;
+ }
+
+ public function setEmbedded(null|PayoutRequestAllocationsDataExportEmbedded|array $embedded): static
+ {
+ if ($embedded !== null && !($embedded instanceof PayoutRequestAllocationsDataExportEmbedded)) {
+ $embedded = PayoutRequestAllocationsDataExportEmbedded::from($embedded);
+ }
+
+ $this->fields['_embedded'] = $embedded;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [
+ 'resource' => 'payoutRequestAllocations',
+ ];
+ if (array_key_exists('id', $this->fields)) {
+ $data['id'] = $this->fields['id'];
+ }
+ if (array_key_exists('name', $this->fields)) {
+ $data['name'] = $this->fields['name'];
+ }
+ if (array_key_exists('format', $this->fields)) {
+ $data['format'] = $this->fields['format'];
+ }
+ if (array_key_exists('arguments', $this->fields)) {
+ $data['arguments'] = $this->fields['arguments']?->jsonSerialize();
+ }
+ if (array_key_exists('emailNotification', $this->fields)) {
+ $data['emailNotification'] = $this->fields['emailNotification'];
+ }
+ if (array_key_exists('fields', $this->fields)) {
+ $data['fields'] = $this->fields['fields'];
+ }
+ if (array_key_exists('recurring', $this->fields)) {
+ $data['recurring'] = $this->fields['recurring']?->jsonSerialize();
+ }
+ if (array_key_exists('userId', $this->fields)) {
+ $data['userId'] = $this->fields['userId'];
+ }
+ if (array_key_exists('fileId', $this->fields)) {
+ $data['fileId'] = $this->fields['fileId'];
+ }
+ if (array_key_exists('recordCount', $this->fields)) {
+ $data['recordCount'] = $this->fields['recordCount'];
+ }
+ if (array_key_exists('scheduledTime', $this->fields)) {
+ $data['scheduledTime'] = $this->fields['scheduledTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('createdTime', $this->fields)) {
+ $data['createdTime'] = $this->fields['createdTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('updatedTime', $this->fields)) {
+ $data['updatedTime'] = $this->fields['updatedTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('status', $this->fields)) {
+ $data['status'] = $this->fields['status'];
+ }
+ if (array_key_exists('dateRange', $this->fields)) {
+ $data['dateRange'] = $this->fields['dateRange']?->jsonSerialize();
+ }
+ if (array_key_exists('_links', $this->fields)) {
+ $data['_links'] = $this->fields['_links'] !== null
+ ? array_map(
+ static fn (ResourceLink $resourceLink) => $resourceLink->jsonSerialize(),
+ $this->fields['_links'],
+ )
+ : null;
+ }
+ if (array_key_exists('_embedded', $this->fields)) {
+ $data['_embedded'] = $this->fields['_embedded']?->jsonSerialize();
+ }
+
+ return $data;
+ }
+
+ private function setId(null|string $id): static
+ {
+ $this->fields['id'] = $id;
+
+ return $this;
+ }
+
+ private function setUserId(null|string $userId): static
+ {
+ $this->fields['userId'] = $userId;
+
+ return $this;
+ }
+
+ private function setFileId(null|string $fileId): static
+ {
+ $this->fields['fileId'] = $fileId;
+
+ return $this;
+ }
+
+ private function setRecordCount(null|int $recordCount): static
+ {
+ $this->fields['recordCount'] = $recordCount;
+
+ return $this;
+ }
+
+ private function setScheduledTime(null|DateTimeImmutable|string $scheduledTime): static
+ {
+ if ($scheduledTime !== null && !($scheduledTime instanceof DateTimeImmutable)) {
+ $scheduledTime = new DateTimeImmutable($scheduledTime);
+ }
+
+ $this->fields['scheduledTime'] = $scheduledTime;
+
+ return $this;
+ }
+
+ private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
+ {
+ if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
+ $createdTime = new DateTimeImmutable($createdTime);
+ }
+
+ $this->fields['createdTime'] = $createdTime;
+
+ return $this;
+ }
+
+ private function setUpdatedTime(null|DateTimeImmutable|string $updatedTime): static
+ {
+ if ($updatedTime !== null && !($updatedTime instanceof DateTimeImmutable)) {
+ $updatedTime = new DateTimeImmutable($updatedTime);
+ }
+
+ $this->fields['updatedTime'] = $updatedTime;
+
+ return $this;
+ }
+
+ private function setStatus(null|string $status): static
+ {
+ $this->fields['status'] = $status;
+
+ return $this;
+ }
+
+ /**
+ * @param null|array[]|ResourceLink[] $links
+ */
+ private function setLinks(null|array $links): static
+ {
+ $links = $links !== null ? array_map(
+ fn ($value) => $value instanceof ResourceLink ? $value : ResourceLink::from($value),
+ $links,
+ ) : null;
+
+ $this->fields['_links'] = $links;
+
+ return $this;
+ }
+}
diff --git a/src/Model/PayoutRequestAllocationsDataExportDateRange.php b/src/Model/PayoutRequestAllocationsDataExportDateRange.php
new file mode 100644
index 000000000..8cff0a640
--- /dev/null
+++ b/src/Model/PayoutRequestAllocationsDataExportDateRange.php
@@ -0,0 +1,96 @@
+setStart($data['start']);
+ }
+ if (array_key_exists('end', $data)) {
+ $this->setEnd($data['end']);
+ }
+ if (array_key_exists('field', $data)) {
+ $this->setField($data['field']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getStart(): string
+ {
+ return $this->fields['start'];
+ }
+
+ public function setStart(string $start): static
+ {
+ $this->fields['start'] = $start;
+
+ return $this;
+ }
+
+ public function getEnd(): string
+ {
+ return $this->fields['end'];
+ }
+
+ public function setEnd(string $end): static
+ {
+ $this->fields['end'] = $end;
+
+ return $this;
+ }
+
+ public function getField(): ?string
+ {
+ return $this->fields['field'] ?? null;
+ }
+
+ public function setField(null|string $field): static
+ {
+ $this->fields['field'] = $field;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('start', $this->fields)) {
+ $data['start'] = $this->fields['start'];
+ }
+ if (array_key_exists('end', $this->fields)) {
+ $data['end'] = $this->fields['end'];
+ }
+ if (array_key_exists('field', $this->fields)) {
+ $data['field'] = $this->fields['field'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/PayoutRequestAllocationsDataExportEmbedded.php b/src/Model/PayoutRequestAllocationsDataExportEmbedded.php
new file mode 100644
index 000000000..e1a275f6a
--- /dev/null
+++ b/src/Model/PayoutRequestAllocationsDataExportEmbedded.php
@@ -0,0 +1,86 @@
+setFile($data['file']);
+ }
+ if (array_key_exists('user', $data)) {
+ $this->setUser($data['user']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getFile(): ?File
+ {
+ return $this->fields['file'] ?? null;
+ }
+
+ public function setFile(null|File|array $file): static
+ {
+ if ($file !== null && !($file instanceof File)) {
+ $file = File::from($file);
+ }
+
+ $this->fields['file'] = $file;
+
+ return $this;
+ }
+
+ public function getUser(): ?User
+ {
+ return $this->fields['user'] ?? null;
+ }
+
+ public function setUser(null|User|array $user): static
+ {
+ if ($user !== null && !($user instanceof User)) {
+ $user = User::from($user);
+ }
+
+ $this->fields['user'] = $user;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('file', $this->fields)) {
+ $data['file'] = $this->fields['file']?->jsonSerialize();
+ }
+ if (array_key_exists('user', $this->fields)) {
+ $data['user'] = $this->fields['user']?->jsonSerialize();
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/PayoutRequestBatch.php b/src/Model/PayoutRequestBatch.php
new file mode 100644
index 000000000..ead10ec95
--- /dev/null
+++ b/src/Model/PayoutRequestBatch.php
@@ -0,0 +1,308 @@
+setId($data['id']);
+ }
+ if (array_key_exists('userId', $data)) {
+ $this->setUserId($data['userId']);
+ }
+ if (array_key_exists('status', $data)) {
+ $this->setStatus($data['status']);
+ }
+ if (array_key_exists('totalCount', $data)) {
+ $this->setTotalCount($data['totalCount']);
+ }
+ if (array_key_exists('successCount', $data)) {
+ $this->setSuccessCount($data['successCount']);
+ }
+ if (array_key_exists('failureCount', $data)) {
+ $this->setFailureCount($data['failureCount']);
+ }
+ if (array_key_exists('customerCount', $data)) {
+ $this->setCustomerCount($data['customerCount']);
+ }
+ if (array_key_exists('totalAmountByCurrency', $data)) {
+ $this->setTotalAmountByCurrency($data['totalAmountByCurrency']);
+ }
+ if (array_key_exists('description', $data)) {
+ $this->setDescription($data['description']);
+ }
+ if (array_key_exists('createdTime', $data)) {
+ $this->setCreatedTime($data['createdTime']);
+ }
+ if (array_key_exists('updatedTime', $data)) {
+ $this->setUpdatedTime($data['updatedTime']);
+ }
+ if (array_key_exists('_links', $data)) {
+ $this->setLinks($data['_links']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getId(): ?string
+ {
+ return $this->fields['id'] ?? null;
+ }
+
+ public function getUserId(): ?string
+ {
+ return $this->fields['userId'] ?? null;
+ }
+
+ public function getStatus(): ?string
+ {
+ return $this->fields['status'] ?? null;
+ }
+
+ public function getTotalCount(): ?int
+ {
+ return $this->fields['totalCount'] ?? null;
+ }
+
+ public function getSuccessCount(): ?int
+ {
+ return $this->fields['successCount'] ?? null;
+ }
+
+ public function getFailureCount(): ?int
+ {
+ return $this->fields['failureCount'] ?? null;
+ }
+
+ public function getCustomerCount(): ?int
+ {
+ return $this->fields['customerCount'] ?? null;
+ }
+
+ /**
+ * @return null|PayoutRequestBatchTotalAmountByCurrency[]
+ */
+ public function getTotalAmountByCurrency(): ?array
+ {
+ return $this->fields['totalAmountByCurrency'] ?? null;
+ }
+
+ public function getDescription(): ?string
+ {
+ return $this->fields['description'] ?? null;
+ }
+
+ public function setDescription(null|string $description): static
+ {
+ $this->fields['description'] = $description;
+
+ return $this;
+ }
+
+ public function getCreatedTime(): ?DateTimeImmutable
+ {
+ return $this->fields['createdTime'] ?? null;
+ }
+
+ public function getUpdatedTime(): ?DateTimeImmutable
+ {
+ return $this->fields['updatedTime'] ?? null;
+ }
+
+ /**
+ * @return null|ResourceLink[]
+ */
+ public function getLinks(): ?array
+ {
+ return $this->fields['_links'] ?? null;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('id', $this->fields)) {
+ $data['id'] = $this->fields['id'];
+ }
+ if (array_key_exists('userId', $this->fields)) {
+ $data['userId'] = $this->fields['userId'];
+ }
+ if (array_key_exists('status', $this->fields)) {
+ $data['status'] = $this->fields['status'];
+ }
+ if (array_key_exists('totalCount', $this->fields)) {
+ $data['totalCount'] = $this->fields['totalCount'];
+ }
+ if (array_key_exists('successCount', $this->fields)) {
+ $data['successCount'] = $this->fields['successCount'];
+ }
+ if (array_key_exists('failureCount', $this->fields)) {
+ $data['failureCount'] = $this->fields['failureCount'];
+ }
+ if (array_key_exists('customerCount', $this->fields)) {
+ $data['customerCount'] = $this->fields['customerCount'];
+ }
+ if (array_key_exists('totalAmountByCurrency', $this->fields)) {
+ $data['totalAmountByCurrency'] = $this->fields['totalAmountByCurrency'] !== null
+ ? array_map(
+ static fn (PayoutRequestBatchTotalAmountByCurrency $payoutRequestBatchTotalAmountByCurrency) => $payoutRequestBatchTotalAmountByCurrency->jsonSerialize(),
+ $this->fields['totalAmountByCurrency'],
+ )
+ : null;
+ }
+ if (array_key_exists('description', $this->fields)) {
+ $data['description'] = $this->fields['description'];
+ }
+ if (array_key_exists('createdTime', $this->fields)) {
+ $data['createdTime'] = $this->fields['createdTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('updatedTime', $this->fields)) {
+ $data['updatedTime'] = $this->fields['updatedTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('_links', $this->fields)) {
+ $data['_links'] = $this->fields['_links'] !== null
+ ? array_map(
+ static fn (ResourceLink $resourceLink) => $resourceLink->jsonSerialize(),
+ $this->fields['_links'],
+ )
+ : null;
+ }
+
+ return $data;
+ }
+
+ private function setId(null|string $id): static
+ {
+ $this->fields['id'] = $id;
+
+ return $this;
+ }
+
+ private function setUserId(null|string $userId): static
+ {
+ $this->fields['userId'] = $userId;
+
+ return $this;
+ }
+
+ private function setStatus(null|string $status): static
+ {
+ $this->fields['status'] = $status;
+
+ return $this;
+ }
+
+ private function setTotalCount(null|int $totalCount): static
+ {
+ $this->fields['totalCount'] = $totalCount;
+
+ return $this;
+ }
+
+ private function setSuccessCount(null|int $successCount): static
+ {
+ $this->fields['successCount'] = $successCount;
+
+ return $this;
+ }
+
+ private function setFailureCount(null|int $failureCount): static
+ {
+ $this->fields['failureCount'] = $failureCount;
+
+ return $this;
+ }
+
+ private function setCustomerCount(null|int $customerCount): static
+ {
+ $this->fields['customerCount'] = $customerCount;
+
+ return $this;
+ }
+
+ /**
+ * @param null|array[]|PayoutRequestBatchTotalAmountByCurrency[] $totalAmountByCurrency
+ */
+ private function setTotalAmountByCurrency(null|array $totalAmountByCurrency): static
+ {
+ $totalAmountByCurrency = $totalAmountByCurrency !== null ? array_map(
+ fn ($value) => $value instanceof PayoutRequestBatchTotalAmountByCurrency ? $value : PayoutRequestBatchTotalAmountByCurrency::from($value),
+ $totalAmountByCurrency,
+ ) : null;
+
+ $this->fields['totalAmountByCurrency'] = $totalAmountByCurrency;
+
+ return $this;
+ }
+
+ private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
+ {
+ if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
+ $createdTime = new DateTimeImmutable($createdTime);
+ }
+
+ $this->fields['createdTime'] = $createdTime;
+
+ return $this;
+ }
+
+ private function setUpdatedTime(null|DateTimeImmutable|string $updatedTime): static
+ {
+ if ($updatedTime !== null && !($updatedTime instanceof DateTimeImmutable)) {
+ $updatedTime = new DateTimeImmutable($updatedTime);
+ }
+
+ $this->fields['updatedTime'] = $updatedTime;
+
+ return $this;
+ }
+
+ /**
+ * @param null|array[]|ResourceLink[] $links
+ */
+ private function setLinks(null|array $links): static
+ {
+ $links = $links !== null ? array_map(
+ fn ($value) => $value instanceof ResourceLink ? $value : ResourceLink::from($value),
+ $links,
+ ) : null;
+
+ $this->fields['_links'] = $links;
+
+ return $this;
+ }
+}
diff --git a/src/Model/PayoutRequestBatchTotalAmountByCurrency.php b/src/Model/PayoutRequestBatchTotalAmountByCurrency.php
new file mode 100644
index 000000000..79857ec78
--- /dev/null
+++ b/src/Model/PayoutRequestBatchTotalAmountByCurrency.php
@@ -0,0 +1,82 @@
+setCurrency($data['currency']);
+ }
+ if (array_key_exists('amount', $data)) {
+ $this->setAmount($data['amount']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getCurrency(): string
+ {
+ return $this->fields['currency'];
+ }
+
+ public function setCurrency(string $currency): static
+ {
+ $this->fields['currency'] = $currency;
+
+ return $this;
+ }
+
+ public function getAmount(): float
+ {
+ return $this->fields['amount'];
+ }
+
+ public function setAmount(float|string $amount): static
+ {
+ if (is_string($amount)) {
+ $amount = (float) $amount;
+ }
+
+ $this->fields['amount'] = $amount;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('currency', $this->fields)) {
+ $data['currency'] = $this->fields['currency'];
+ }
+ if (array_key_exists('amount', $this->fields)) {
+ $data['amount'] = $this->fields['amount'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/PayoutRequestBlockReason.php b/src/Model/PayoutRequestBlockReason.php
new file mode 100644
index 000000000..54a70a3f0
--- /dev/null
+++ b/src/Model/PayoutRequestBlockReason.php
@@ -0,0 +1,40 @@
+setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+
+ return $data;
+ }
+}
diff --git a/src/Model/PayoutRequestCancellation.php b/src/Model/PayoutRequestCancellation.php
index 068489a46..8df3d8797 100644
--- a/src/Model/PayoutRequestCancellation.php
+++ b/src/Model/PayoutRequestCancellation.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayoutRequestCancellation implements JsonSerializable
{
+ use HasMetadata;
+
public const CANCELED_BY_MERCHANT = 'merchant';
public const CANCELED_BY_CUSTOMER = 'customer';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('canceledBy', $data)) {
$this->setCanceledBy($data['canceledBy']);
@@ -32,11 +35,12 @@ public function __construct(array $data = [])
if (array_key_exists('description', $data)) {
$this->setDescription($data['description']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCanceledBy(): ?string
diff --git a/src/Model/PayoutRequestSplit.php b/src/Model/PayoutRequestSplit.php
new file mode 100644
index 000000000..6e95c63ca
--- /dev/null
+++ b/src/Model/PayoutRequestSplit.php
@@ -0,0 +1,71 @@
+setAmounts($data['amounts']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ /**
+ * @return float[]
+ */
+ public function getAmounts(): array
+ {
+ return $this->fields['amounts'];
+ }
+
+ /**
+ * @param float[]|string[] $amounts
+ */
+ public function setAmounts(array $amounts): static
+ {
+ $amounts = array_map(
+ fn ($value) => is_string($value) ? (float) $value : $value,
+ $amounts,
+ );
+
+ $this->fields['amounts'] = $amounts;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('amounts', $this->fields)) {
+ $data['amounts'] = $this->fields['amounts'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/PayoutRequestTimelineMessage.php b/src/Model/PayoutRequestTimelineMessage.php
index 9d372b9ec..e972ca342 100644
--- a/src/Model/PayoutRequestTimelineMessage.php
+++ b/src/Model/PayoutRequestTimelineMessage.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayoutRequestTimelineMessage implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_TIMELINE_COMMENT_CREATED = 'timeline-comment-created';
public const TYPE_PAYOUT_REQUEST_CREATED = 'payout-request-created';
- public const TYPE_PAYOUT_REQUEST_FLUSHED = 'payout-request-flushed';
+ public const TYPE_PAYOUT_REQUEST_READY = 'payout-request-ready';
- public const TYPE_PAYOUT_REQUEST_FLUSH_UNDONE = 'payout-request-flush-undone';
+ public const TYPE_PAYOUT_REQUEST_RETURNED_TO_PENDING = 'payout-request-returned-to-pending';
public const TYPE_PAYOUT_REQUEST_APPROVED = 'payout-request-approved';
@@ -54,7 +57,7 @@ class PayoutRequestTimelineMessage implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -74,11 +77,12 @@ public function __construct(array $data = [])
if (array_key_exists('extraData', $data)) {
$this->setExtraData($data['extraData']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): string
diff --git a/src/Model/PayoutRequestV2.php b/src/Model/PayoutRequestV2.php
index e74b0eecd..bd5b340b6 100644
--- a/src/Model/PayoutRequestV2.php
+++ b/src/Model/PayoutRequestV2.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayoutRequestV2 implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
- public const STATUS_FLUSHED = 'flushed';
+ public const STATUS_READY = 'ready';
public const STATUS_APPROVED = 'approved';
@@ -42,9 +45,13 @@ class PayoutRequestV2 implements JsonSerializable
public const STATUS_ADMIN_REVERSED = 'admin-reversed';
+ public const STATUS_SPLIT = 'split';
+
+ public const STATUS_MERGED = 'merged';
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -58,6 +65,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentInstrumentId', $data)) {
$this->setPaymentInstrumentId($data['paymentInstrumentId']);
}
+ if (array_key_exists('splitFromPayoutRequestId', $data)) {
+ $this->setSplitFromPayoutRequestId($data['splitFromPayoutRequestId']);
+ }
+ if (array_key_exists('mergedIntoPayoutRequestId', $data)) {
+ $this->setMergedIntoPayoutRequestId($data['mergedIntoPayoutRequestId']);
+ }
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
}
@@ -76,6 +89,12 @@ public function __construct(array $data = [])
if (array_key_exists('blocked', $data)) {
$this->setBlocked($data['blocked']);
}
+ if (array_key_exists('blockReason', $data)) {
+ $this->setBlockReason($data['blockReason']);
+ }
+ if (array_key_exists('batchId', $data)) {
+ $this->setBatchId($data['batchId']);
+ }
if (array_key_exists('selectPaymentInstrumentUrl', $data)) {
$this->setSelectPaymentInstrumentUrl($data['selectPaymentInstrumentUrl']);
}
@@ -97,11 +116,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
@@ -145,6 +165,16 @@ public function setPaymentInstrumentId(null|string $paymentInstrumentId): static
return $this;
}
+ public function getSplitFromPayoutRequestId(): ?string
+ {
+ return $this->fields['splitFromPayoutRequestId'] ?? null;
+ }
+
+ public function getMergedIntoPayoutRequestId(): ?string
+ {
+ return $this->fields['mergedIntoPayoutRequestId'] ?? null;
+ }
+
public function getCurrency(): string
{
return $this->fields['currency'];
@@ -214,6 +244,27 @@ public function setBlocked(null|bool $blocked): static
return $this;
}
+ public function getBlockReason(): ?PayoutRequestBlockReason
+ {
+ return $this->fields['blockReason'] ?? null;
+ }
+
+ public function setBlockReason(null|PayoutRequestBlockReason|array $blockReason): static
+ {
+ if ($blockReason !== null && !($blockReason instanceof PayoutRequestBlockReason)) {
+ $blockReason = PayoutRequestBlockReason::from($blockReason);
+ }
+
+ $this->fields['blockReason'] = $blockReason;
+
+ return $this;
+ }
+
+ public function getBatchId(): ?string
+ {
+ return $this->fields['batchId'] ?? null;
+ }
+
public function getSelectPaymentInstrumentUrl(): ?string
{
return $this->fields['selectPaymentInstrumentUrl'] ?? null;
@@ -288,6 +339,12 @@ public function jsonSerialize(): array
if (array_key_exists('paymentInstrumentId', $this->fields)) {
$data['paymentInstrumentId'] = $this->fields['paymentInstrumentId'];
}
+ if (array_key_exists('splitFromPayoutRequestId', $this->fields)) {
+ $data['splitFromPayoutRequestId'] = $this->fields['splitFromPayoutRequestId'];
+ }
+ if (array_key_exists('mergedIntoPayoutRequestId', $this->fields)) {
+ $data['mergedIntoPayoutRequestId'] = $this->fields['mergedIntoPayoutRequestId'];
+ }
if (array_key_exists('currency', $this->fields)) {
$data['currency'] = $this->fields['currency'];
}
@@ -306,6 +363,12 @@ public function jsonSerialize(): array
if (array_key_exists('blocked', $this->fields)) {
$data['blocked'] = $this->fields['blocked'];
}
+ if (array_key_exists('blockReason', $this->fields)) {
+ $data['blockReason'] = $this->fields['blockReason']?->jsonSerialize();
+ }
+ if (array_key_exists('batchId', $this->fields)) {
+ $data['batchId'] = $this->fields['batchId'];
+ }
if (array_key_exists('selectPaymentInstrumentUrl', $this->fields)) {
$data['selectPaymentInstrumentUrl'] = $this->fields['selectPaymentInstrumentUrl'];
}
@@ -348,6 +411,20 @@ private function setId(null|string $id): static
return $this;
}
+ private function setSplitFromPayoutRequestId(null|string $splitFromPayoutRequestId): static
+ {
+ $this->fields['splitFromPayoutRequestId'] = $splitFromPayoutRequestId;
+
+ return $this;
+ }
+
+ private function setMergedIntoPayoutRequestId(null|string $mergedIntoPayoutRequestId): static
+ {
+ $this->fields['mergedIntoPayoutRequestId'] = $mergedIntoPayoutRequestId;
+
+ return $this;
+ }
+
private function setAvailableAmount(null|float|string $availableAmount): static
{
if (is_string($availableAmount)) {
@@ -359,6 +436,13 @@ private function setAvailableAmount(null|float|string $availableAmount): static
return $this;
}
+ private function setBatchId(null|string $batchId): static
+ {
+ $this->fields['batchId'] = $batchId;
+
+ return $this;
+ }
+
private function setSelectPaymentInstrumentUrl(null|string $selectPaymentInstrumentUrl): static
{
$this->fields['selectPaymentInstrumentUrl'] = $selectPaymentInstrumentUrl;
diff --git a/src/Model/PayoutRequestsDataExport.php b/src/Model/PayoutRequestsDataExport.php
new file mode 100644
index 000000000..e25d9c729
--- /dev/null
+++ b/src/Model/PayoutRequestsDataExport.php
@@ -0,0 +1,428 @@
+setId($data['id']);
+ }
+ if (array_key_exists('name', $data)) {
+ $this->setName($data['name']);
+ }
+ if (array_key_exists('format', $data)) {
+ $this->setFormat($data['format']);
+ }
+ if (array_key_exists('arguments', $data)) {
+ $this->setArguments($data['arguments']);
+ }
+ if (array_key_exists('emailNotification', $data)) {
+ $this->setEmailNotification($data['emailNotification']);
+ }
+ if (array_key_exists('fields', $data)) {
+ $this->setFields($data['fields']);
+ }
+ if (array_key_exists('recurring', $data)) {
+ $this->setRecurring($data['recurring']);
+ }
+ if (array_key_exists('userId', $data)) {
+ $this->setUserId($data['userId']);
+ }
+ if (array_key_exists('fileId', $data)) {
+ $this->setFileId($data['fileId']);
+ }
+ if (array_key_exists('recordCount', $data)) {
+ $this->setRecordCount($data['recordCount']);
+ }
+ if (array_key_exists('scheduledTime', $data)) {
+ $this->setScheduledTime($data['scheduledTime']);
+ }
+ if (array_key_exists('createdTime', $data)) {
+ $this->setCreatedTime($data['createdTime']);
+ }
+ if (array_key_exists('updatedTime', $data)) {
+ $this->setUpdatedTime($data['updatedTime']);
+ }
+ if (array_key_exists('status', $data)) {
+ $this->setStatus($data['status']);
+ }
+ if (array_key_exists('dateRange', $data)) {
+ $this->setDateRange($data['dateRange']);
+ }
+ if (array_key_exists('_links', $data)) {
+ $this->setLinks($data['_links']);
+ }
+ if (array_key_exists('_embedded', $data)) {
+ $this->setEmbedded($data['_embedded']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getResource(): string
+ {
+ return 'payoutRequests';
+ }
+
+ public function getId(): ?string
+ {
+ return $this->fields['id'] ?? null;
+ }
+
+ public function getName(): string
+ {
+ return $this->fields['name'];
+ }
+
+ public function setName(string $name): static
+ {
+ $this->fields['name'] = $name;
+
+ return $this;
+ }
+
+ public function getFormat(): string
+ {
+ return $this->fields['format'];
+ }
+
+ public function setFormat(string $format): static
+ {
+ $this->fields['format'] = $format;
+
+ return $this;
+ }
+
+ public function getArguments(): ?DataExportArguments
+ {
+ return $this->fields['arguments'] ?? null;
+ }
+
+ public function setArguments(null|DataExportArguments|array $arguments): static
+ {
+ if ($arguments !== null && !($arguments instanceof DataExportArguments)) {
+ $arguments = DataExportArguments::from($arguments);
+ }
+
+ $this->fields['arguments'] = $arguments;
+
+ return $this;
+ }
+
+ /**
+ * @return null|string[]
+ */
+ public function getEmailNotification(): ?array
+ {
+ return $this->fields['emailNotification'] ?? null;
+ }
+
+ /**
+ * @param null|string[] $emailNotification
+ */
+ public function setEmailNotification(null|array $emailNotification): static
+ {
+ $this->fields['emailNotification'] = $emailNotification;
+
+ return $this;
+ }
+
+ /**
+ * @return null|string[]
+ */
+ public function getFields(): ?array
+ {
+ return $this->fields['fields'] ?? null;
+ }
+
+ /**
+ * @param null|string[] $fields
+ */
+ public function setFields(null|array $fields): static
+ {
+ $this->fields['fields'] = $fields;
+
+ return $this;
+ }
+
+ public function getRecurring(): ?DataExportRecurring
+ {
+ return $this->fields['recurring'] ?? null;
+ }
+
+ public function setRecurring(null|DataExportRecurring|array $recurring): static
+ {
+ if ($recurring !== null && !($recurring instanceof DataExportRecurring)) {
+ $recurring = DataExportRecurring::from($recurring);
+ }
+
+ $this->fields['recurring'] = $recurring;
+
+ return $this;
+ }
+
+ public function getUserId(): ?string
+ {
+ return $this->fields['userId'] ?? null;
+ }
+
+ public function getFileId(): ?string
+ {
+ return $this->fields['fileId'] ?? null;
+ }
+
+ public function getRecordCount(): ?int
+ {
+ return $this->fields['recordCount'] ?? null;
+ }
+
+ public function getScheduledTime(): ?DateTimeImmutable
+ {
+ return $this->fields['scheduledTime'] ?? null;
+ }
+
+ public function getCreatedTime(): ?DateTimeImmutable
+ {
+ return $this->fields['createdTime'] ?? null;
+ }
+
+ public function getUpdatedTime(): ?DateTimeImmutable
+ {
+ return $this->fields['updatedTime'] ?? null;
+ }
+
+ public function getStatus(): ?string
+ {
+ return $this->fields['status'] ?? null;
+ }
+
+ public function getDateRange(): ?PayoutRequestsDataExportDateRange
+ {
+ return $this->fields['dateRange'] ?? null;
+ }
+
+ public function setDateRange(null|PayoutRequestsDataExportDateRange|array $dateRange): static
+ {
+ if ($dateRange !== null && !($dateRange instanceof PayoutRequestsDataExportDateRange)) {
+ $dateRange = PayoutRequestsDataExportDateRange::from($dateRange);
+ }
+
+ $this->fields['dateRange'] = $dateRange;
+
+ return $this;
+ }
+
+ /**
+ * @return null|ResourceLink[]
+ */
+ public function getLinks(): ?array
+ {
+ return $this->fields['_links'] ?? null;
+ }
+
+ public function getEmbedded(): ?PayoutRequestsDataExportEmbedded
+ {
+ return $this->fields['_embedded'] ?? null;
+ }
+
+ public function setEmbedded(null|PayoutRequestsDataExportEmbedded|array $embedded): static
+ {
+ if ($embedded !== null && !($embedded instanceof PayoutRequestsDataExportEmbedded)) {
+ $embedded = PayoutRequestsDataExportEmbedded::from($embedded);
+ }
+
+ $this->fields['_embedded'] = $embedded;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [
+ 'resource' => 'payoutRequests',
+ ];
+ if (array_key_exists('id', $this->fields)) {
+ $data['id'] = $this->fields['id'];
+ }
+ if (array_key_exists('name', $this->fields)) {
+ $data['name'] = $this->fields['name'];
+ }
+ if (array_key_exists('format', $this->fields)) {
+ $data['format'] = $this->fields['format'];
+ }
+ if (array_key_exists('arguments', $this->fields)) {
+ $data['arguments'] = $this->fields['arguments']?->jsonSerialize();
+ }
+ if (array_key_exists('emailNotification', $this->fields)) {
+ $data['emailNotification'] = $this->fields['emailNotification'];
+ }
+ if (array_key_exists('fields', $this->fields)) {
+ $data['fields'] = $this->fields['fields'];
+ }
+ if (array_key_exists('recurring', $this->fields)) {
+ $data['recurring'] = $this->fields['recurring']?->jsonSerialize();
+ }
+ if (array_key_exists('userId', $this->fields)) {
+ $data['userId'] = $this->fields['userId'];
+ }
+ if (array_key_exists('fileId', $this->fields)) {
+ $data['fileId'] = $this->fields['fileId'];
+ }
+ if (array_key_exists('recordCount', $this->fields)) {
+ $data['recordCount'] = $this->fields['recordCount'];
+ }
+ if (array_key_exists('scheduledTime', $this->fields)) {
+ $data['scheduledTime'] = $this->fields['scheduledTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('createdTime', $this->fields)) {
+ $data['createdTime'] = $this->fields['createdTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('updatedTime', $this->fields)) {
+ $data['updatedTime'] = $this->fields['updatedTime']?->format(DateTimeInterface::RFC3339);
+ }
+ if (array_key_exists('status', $this->fields)) {
+ $data['status'] = $this->fields['status'];
+ }
+ if (array_key_exists('dateRange', $this->fields)) {
+ $data['dateRange'] = $this->fields['dateRange']?->jsonSerialize();
+ }
+ if (array_key_exists('_links', $this->fields)) {
+ $data['_links'] = $this->fields['_links'] !== null
+ ? array_map(
+ static fn (ResourceLink $resourceLink) => $resourceLink->jsonSerialize(),
+ $this->fields['_links'],
+ )
+ : null;
+ }
+ if (array_key_exists('_embedded', $this->fields)) {
+ $data['_embedded'] = $this->fields['_embedded']?->jsonSerialize();
+ }
+
+ return $data;
+ }
+
+ private function setId(null|string $id): static
+ {
+ $this->fields['id'] = $id;
+
+ return $this;
+ }
+
+ private function setUserId(null|string $userId): static
+ {
+ $this->fields['userId'] = $userId;
+
+ return $this;
+ }
+
+ private function setFileId(null|string $fileId): static
+ {
+ $this->fields['fileId'] = $fileId;
+
+ return $this;
+ }
+
+ private function setRecordCount(null|int $recordCount): static
+ {
+ $this->fields['recordCount'] = $recordCount;
+
+ return $this;
+ }
+
+ private function setScheduledTime(null|DateTimeImmutable|string $scheduledTime): static
+ {
+ if ($scheduledTime !== null && !($scheduledTime instanceof DateTimeImmutable)) {
+ $scheduledTime = new DateTimeImmutable($scheduledTime);
+ }
+
+ $this->fields['scheduledTime'] = $scheduledTime;
+
+ return $this;
+ }
+
+ private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
+ {
+ if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
+ $createdTime = new DateTimeImmutable($createdTime);
+ }
+
+ $this->fields['createdTime'] = $createdTime;
+
+ return $this;
+ }
+
+ private function setUpdatedTime(null|DateTimeImmutable|string $updatedTime): static
+ {
+ if ($updatedTime !== null && !($updatedTime instanceof DateTimeImmutable)) {
+ $updatedTime = new DateTimeImmutable($updatedTime);
+ }
+
+ $this->fields['updatedTime'] = $updatedTime;
+
+ return $this;
+ }
+
+ private function setStatus(null|string $status): static
+ {
+ $this->fields['status'] = $status;
+
+ return $this;
+ }
+
+ /**
+ * @param null|array[]|ResourceLink[] $links
+ */
+ private function setLinks(null|array $links): static
+ {
+ $links = $links !== null ? array_map(
+ fn ($value) => $value instanceof ResourceLink ? $value : ResourceLink::from($value),
+ $links,
+ ) : null;
+
+ $this->fields['_links'] = $links;
+
+ return $this;
+ }
+}
diff --git a/src/Model/PayoutRequestsDataExportDateRange.php b/src/Model/PayoutRequestsDataExportDateRange.php
new file mode 100644
index 000000000..4ce78fa9e
--- /dev/null
+++ b/src/Model/PayoutRequestsDataExportDateRange.php
@@ -0,0 +1,96 @@
+setStart($data['start']);
+ }
+ if (array_key_exists('end', $data)) {
+ $this->setEnd($data['end']);
+ }
+ if (array_key_exists('field', $data)) {
+ $this->setField($data['field']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getStart(): string
+ {
+ return $this->fields['start'];
+ }
+
+ public function setStart(string $start): static
+ {
+ $this->fields['start'] = $start;
+
+ return $this;
+ }
+
+ public function getEnd(): string
+ {
+ return $this->fields['end'];
+ }
+
+ public function setEnd(string $end): static
+ {
+ $this->fields['end'] = $end;
+
+ return $this;
+ }
+
+ public function getField(): ?string
+ {
+ return $this->fields['field'] ?? null;
+ }
+
+ public function setField(null|string $field): static
+ {
+ $this->fields['field'] = $field;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('start', $this->fields)) {
+ $data['start'] = $this->fields['start'];
+ }
+ if (array_key_exists('end', $this->fields)) {
+ $data['end'] = $this->fields['end'];
+ }
+ if (array_key_exists('field', $this->fields)) {
+ $data['field'] = $this->fields['field'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/PayoutRequestsDataExportEmbedded.php b/src/Model/PayoutRequestsDataExportEmbedded.php
new file mode 100644
index 000000000..d178bbc23
--- /dev/null
+++ b/src/Model/PayoutRequestsDataExportEmbedded.php
@@ -0,0 +1,86 @@
+setFile($data['file']);
+ }
+ if (array_key_exists('user', $data)) {
+ $this->setUser($data['user']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getFile(): ?File
+ {
+ return $this->fields['file'] ?? null;
+ }
+
+ public function setFile(null|File|array $file): static
+ {
+ if ($file !== null && !($file instanceof File)) {
+ $file = File::from($file);
+ }
+
+ $this->fields['file'] = $file;
+
+ return $this;
+ }
+
+ public function getUser(): ?User
+ {
+ return $this->fields['user'] ?? null;
+ }
+
+ public function setUser(null|User|array $user): static
+ {
+ if ($user !== null && !($user instanceof User)) {
+ $user = User::from($user);
+ }
+
+ $this->fields['user'] = $user;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('file', $this->fields)) {
+ $data['file'] = $this->fields['file']?->jsonSerialize();
+ }
+ if (array_key_exists('user', $this->fields)) {
+ $data['user'] = $this->fields['user']?->jsonSerialize();
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/Payper.php b/src/Model/Payper.php
index 1dc34ddbe..9c9828136 100644
--- a/src/Model/Payper.php
+++ b/src/Model/Payper.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Payper extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Payper',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayperCredentials
diff --git a/src/Model/PayperCredentials.php b/src/Model/PayperCredentials.php
index c482bc779..28744db8f 100644
--- a/src/Model/PayperCredentials.php
+++ b/src/Model/PayperCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayperCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSecretKey(): string
diff --git a/src/Model/PayperSettings.php b/src/Model/PayperSettings.php
index 3d105335b..91c975300 100644
--- a/src/Model/PayperSettings.php
+++ b/src/Model/PayperSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayperSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('autodepositLookup', $data)) {
$this->setAutodepositLookup($data['autodepositLookup']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('bypassAutodepositLookup', $data)) {
$this->setBypassAutodepositLookup($data['bypassAutodepositLookup']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAutodepositLookup(): ?bool
diff --git a/src/Model/Payr.php b/src/Model/Payr.php
index 228b3e6a6..55d6db7be 100644
--- a/src/Model/Payr.php
+++ b/src/Model/Payr.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Payr extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Payr',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayrCredentials
diff --git a/src/Model/PayrCredentials.php b/src/Model/PayrCredentials.php
index 87e0c6a47..ca838ee24 100644
--- a/src/Model/PayrCredentials.php
+++ b/src/Model/PayrCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayrCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiSecurityToken', $data)) {
$this->setApiSecurityToken($data['apiSecurityToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/Paysafe.php b/src/Model/Paysafe.php
index 43b80d2fc..dba0d2490 100644
--- a/src/Model/Paysafe.php
+++ b/src/Model/Paysafe.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Paysafe extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Paysafe',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PaysafeCredentials
diff --git a/src/Model/PaysafeCredentials.php b/src/Model/PaysafeCredentials.php
index 82e06ad1c..1f5025d53 100644
--- a/src/Model/PaysafeCredentials.php
+++ b/src/Model/PaysafeCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaysafeCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('storeId', $data)) {
$this->setStoreId($data['storeId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('accountNum', $data)) {
$this->setAccountNum($data['accountNum']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStoreId(): string
diff --git a/src/Model/Paysafecard.php b/src/Model/Paysafecard.php
index 5cb633143..6abb28e70 100644
--- a/src/Model/Paysafecard.php
+++ b/src/Model/Paysafecard.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Paysafecard extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Paysafecard',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PaysafecardCredentials
diff --git a/src/Model/PaysafecardCredentials.php b/src/Model/PaysafecardCredentials.php
index 7584ed464..33232a65e 100644
--- a/src/Model/PaysafecardCredentials.php
+++ b/src/Model/PaysafecardCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaysafecardCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('reconciliationApiKey', $data)) {
$this->setReconciliationApiKey($data['reconciliationApiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/Paysafecash.php b/src/Model/Paysafecash.php
index 4ee02038b..27b1c02ac 100644
--- a/src/Model/Paysafecash.php
+++ b/src/Model/Paysafecash.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Paysafecash extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Paysafecash',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PaysafecashCredentials
diff --git a/src/Model/PaysafecashCredentials.php b/src/Model/PaysafecashCredentials.php
index 4f24cbaef..7e0adc90b 100644
--- a/src/Model/PaysafecashCredentials.php
+++ b/src/Model/PaysafecashCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PaysafecashCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/Payvision.php b/src/Model/Payvision.php
index d42b15bce..7e6fc08c2 100644
--- a/src/Model/Payvision.php
+++ b/src/Model/Payvision.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Payvision extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Payvision',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PayvisionCredentials
diff --git a/src/Model/PayvisionCredentials.php b/src/Model/PayvisionCredentials.php
index ecc97a7ed..d0ead4e40 100644
--- a/src/Model/PayvisionCredentials.php
+++ b/src/Model/PayvisionCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayvisionCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('memberId', $data)) {
$this->setMemberId($data['memberId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('memberGuid', $data)) {
$this->setMemberGuid($data['memberGuid']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMemberId(): string
diff --git a/src/Model/PayvisionSettings.php b/src/Model/PayvisionSettings.php
index d4aa65905..d4f50662d 100644
--- a/src/Model/PayvisionSettings.php
+++ b/src/Model/PayvisionSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PayvisionSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('avs', $data)) {
$this->setAvs($data['avs']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantAccountType', $data)) {
$this->setMerchantAccountType($data['merchantAccountType']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAvs(): ?bool
diff --git a/src/Model/PercentageFeeFormula.php b/src/Model/PercentageFeeFormula.php
index e47fc33c7..0def3d100 100644
--- a/src/Model/PercentageFeeFormula.php
+++ b/src/Model/PercentageFeeFormula.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PercentageFeeFormula implements FeeFormula
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -29,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('minAmount', $data)) {
$this->setMinAmount($data['minAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/PeriodAnchorFactory.php b/src/Model/PeriodAnchorFactory.php
index 79b5bad45..2858916ab 100644
--- a/src/Model/PeriodAnchorFactory.php
+++ b/src/Model/PeriodAnchorFactory.php
@@ -18,11 +18,11 @@
class PeriodAnchorFactory
{
- public static function from(array $data = []): PeriodAnchor
+ public static function from(array $data = [], array $metadata = []): PeriodAnchor
{
return match ($data['method']) {
- 'day-of-month' => SchedulingMethodDayOfMonth::from($data),
- 'day-of-week' => SchedulingMethodDayOfWeek::from($data),
+ 'day-of-month' => SchedulingMethodDayOfMonth::from($data, $metadata),
+ 'day-of-week' => SchedulingMethodDayOfWeek::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/PharosPayments.php b/src/Model/PharosPayments.php
index cdc864c0f..27662c49f 100644
--- a/src/Model/PharosPayments.php
+++ b/src/Model/PharosPayments.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PharosPayments extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PharosPayments',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PharosPaymentsCredentials
diff --git a/src/Model/PharosPaymentsCredentials.php b/src/Model/PharosPaymentsCredentials.php
index 51ef1f22a..bfb47308c 100644
--- a/src/Model/PharosPaymentsCredentials.php
+++ b/src/Model/PharosPaymentsCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PharosPaymentsCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('terminalCode', $data)) {
$this->setTerminalCode($data['terminalCode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/Piastrix.php b/src/Model/Piastrix.php
index 179740bda..b1c051c8f 100644
--- a/src/Model/Piastrix.php
+++ b/src/Model/Piastrix.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Piastrix extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Piastrix',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PiastrixCredentials
diff --git a/src/Model/PiastrixCredentials.php b/src/Model/PiastrixCredentials.php
index 9b2f162a2..c68e75230 100644
--- a/src/Model/PiastrixCredentials.php
+++ b/src/Model/PiastrixCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PiastrixCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('shopId', $data)) {
$this->setShopId($data['shopId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getShopId(): string
diff --git a/src/Model/PiastrixSettings.php b/src/Model/PiastrixSettings.php
index 905345903..8463bdfae 100644
--- a/src/Model/PiastrixSettings.php
+++ b/src/Model/PiastrixSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PiastrixSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('tolerancePercentage', $data)) {
$this->setTolerancePercentage($data['tolerancePercentage']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTolerancePercentage(): ?int
diff --git a/src/Model/PickInstructionGatewayAccountWeights.php b/src/Model/PickInstructionGatewayAccountWeights.php
index 856b5891c..42a3d15e4 100644
--- a/src/Model/PickInstructionGatewayAccountWeights.php
+++ b/src/Model/PickInstructionGatewayAccountWeights.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PickInstructionGatewayAccountWeights extends GatewayAccountPickInstruction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'method' => 'gateway-account-weights',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('weightedList', $data)) {
$this->setWeightedList($data['weightedList']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/PickInstructionGatewayAccountWeightsWeightedList.php b/src/Model/PickInstructionGatewayAccountWeightsWeightedList.php
index eb9aac08c..3625a1171 100644
--- a/src/Model/PickInstructionGatewayAccountWeightsWeightedList.php
+++ b/src/Model/PickInstructionGatewayAccountWeightsWeightedList.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PickInstructionGatewayAccountWeightsWeightedList implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('gatewayAccountId', $data)) {
$this->setGatewayAccountId($data['gatewayAccountId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('weight', $data)) {
$this->setWeight($data['weight']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getGatewayAccountId(): string
diff --git a/src/Model/PickInstructionGatewayAcquirerWeights.php b/src/Model/PickInstructionGatewayAcquirerWeights.php
index 33f86ce8b..fcaf040ad 100644
--- a/src/Model/PickInstructionGatewayAcquirerWeights.php
+++ b/src/Model/PickInstructionGatewayAcquirerWeights.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PickInstructionGatewayAcquirerWeights extends GatewayAccountPickInstruction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'method' => 'gateway-acquirer-weights',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('weightedList', $data)) {
$this->setWeightedList($data['weightedList']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/PickInstructionGatewayAcquirerWeightsWeightedList.php b/src/Model/PickInstructionGatewayAcquirerWeightsWeightedList.php
index dcc0f647e..8878a2cb5 100644
--- a/src/Model/PickInstructionGatewayAcquirerWeightsWeightedList.php
+++ b/src/Model/PickInstructionGatewayAcquirerWeightsWeightedList.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PickInstructionGatewayAcquirerWeightsWeightedList implements JsonSerializable
{
+ use HasMetadata;
+
public const GATEWAY_NAME_A1_GATEWAY = 'A1Gateway';
public const GATEWAY_NAME_ACI = 'ACI';
@@ -446,6 +449,8 @@ class PickInstructionGatewayAcquirerWeightsWeightedList implements JsonSerializa
public const GATEWAY_NAME_VEGA_WALLET = 'VegaWallet';
+ public const GATEWAY_NAME_VIVA = 'Viva';
+
public const GATEWAY_NAME_WALLET88 = 'Wallet88';
public const GATEWAY_NAME_WALPAY = 'Walpay';
@@ -884,7 +889,7 @@ class PickInstructionGatewayAcquirerWeightsWeightedList implements JsonSerializa
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('gatewayName', $data)) {
$this->setGatewayName($data['gatewayName']);
@@ -895,11 +900,12 @@ public function __construct(array $data = [])
if (array_key_exists('weight', $data)) {
$this->setWeight($data['weight']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getGatewayName(): ?string
diff --git a/src/Model/Pin4Pay.php b/src/Model/Pin4Pay.php
index 300ba0104..0c4afcbf3 100644
--- a/src/Model/Pin4Pay.php
+++ b/src/Model/Pin4Pay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Pin4Pay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Pin4Pay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): Pin4PayCredentials
diff --git a/src/Model/Pin4PayCredentials.php b/src/Model/Pin4PayCredentials.php
index 69e56c711..f7298d69f 100644
--- a/src/Model/Pin4PayCredentials.php
+++ b/src/Model/Pin4PayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Pin4PayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('keyValue', $data)) {
$this->setKeyValue($data['keyValue']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/PlaidAccountToken.php b/src/Model/PlaidAccountToken.php
index f0ac1ca29..5be2b47e1 100644
--- a/src/Model/PlaidAccountToken.php
+++ b/src/Model/PlaidAccountToken.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlaidAccountToken implements CompositeToken
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentInstrument', $data)) {
$this->setPaymentInstrument($data['paymentInstrument']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/PlaidAccountTokenPaymentInstrument.php b/src/Model/PlaidAccountTokenPaymentInstrument.php
index 6e7443364..325f922fb 100644
--- a/src/Model/PlaidAccountTokenPaymentInstrument.php
+++ b/src/Model/PlaidAccountTokenPaymentInstrument.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlaidAccountTokenPaymentInstrument implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('linkToken', $data)) {
$this->setLinkToken($data['linkToken']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('accountId', $data)) {
$this->setAccountId($data['accountId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLinkToken(): string
diff --git a/src/Model/PlaidCredential.php b/src/Model/PlaidCredential.php
index 4a22bc328..0a523201c 100644
--- a/src/Model/PlaidCredential.php
+++ b/src/Model/PlaidCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlaidCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -27,7 +30,7 @@ class PlaidCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/Plan.php b/src/Model/Plan.php
index 5d7771c12..568b3b1c6 100644
--- a/src/Model/Plan.php
+++ b/src/Model/Plan.php
@@ -19,7 +19,7 @@
interface Plan extends JsonSerializable
{
- public function getId(): ?string;
+ public function getId(): string;
public function getName(): string;
diff --git a/src/Model/PlanFactory.php b/src/Model/PlanFactory.php
index 4dd87a42a..21a5eb349 100644
--- a/src/Model/PlanFactory.php
+++ b/src/Model/PlanFactory.php
@@ -16,15 +16,15 @@
class PlanFactory
{
- public static function from(array $data = []): Plan
+ public static function from(array $data = [], array $metadata = []): Plan
{
if ($data['isTrialOnly'] ?? false) {
- return TrialOnlyPlan::from($data);
+ return TrialOnlyPlan::from($data, $metadata);
}
if (isset($data['recurringInterval'])) {
- return SubscriptionPlan::from($data);
+ return SubscriptionPlan::from($data, $metadata);
}
- return OneTimeSalePlan::from($data);
+ return OneTimeSalePlan::from($data, $metadata);
}
}
diff --git a/src/Model/PlanFormulaFixedFee.php b/src/Model/PlanFormulaFixedFee.php
index 631c2c2b2..90776fbe6 100644
--- a/src/Model/PlanFormulaFixedFee.php
+++ b/src/Model/PlanFormulaFixedFee.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PlanFormulaFixedFee implements PlanPriceFormula
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('price', $data)) {
$this->setPrice($data['price']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFormula(): string
diff --git a/src/Model/PlanFormulaFlatRate.php b/src/Model/PlanFormulaFlatRate.php
index 098cc294f..8b21205f7 100644
--- a/src/Model/PlanFormulaFlatRate.php
+++ b/src/Model/PlanFormulaFlatRate.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PlanFormulaFlatRate implements PlanPriceFormula
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('price', $data)) {
$this->setPrice($data['price']);
@@ -29,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('maxQuantity', $data)) {
$this->setMaxQuantity($data['maxQuantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFormula(): string
diff --git a/src/Model/PlanFormulaStairstep.php b/src/Model/PlanFormulaStairstep.php
index d32897789..4a4284af9 100644
--- a/src/Model/PlanFormulaStairstep.php
+++ b/src/Model/PlanFormulaStairstep.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PlanFormulaStairstep implements PlanPriceFormula
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('brackets', $data)) {
$this->setBrackets($data['brackets']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('minQuantity', $data)) {
$this->setMinQuantity($data['minQuantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFormula(): string
diff --git a/src/Model/PlanFormulaStairstepBrackets.php b/src/Model/PlanFormulaStairstepBrackets.php
index 411a73841..eab01b184 100644
--- a/src/Model/PlanFormulaStairstepBrackets.php
+++ b/src/Model/PlanFormulaStairstepBrackets.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlanFormulaStairstepBrackets implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('price', $data)) {
$this->setPrice($data['price']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('maxQuantity', $data)) {
$this->setMaxQuantity($data['maxQuantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrice(): ?float
diff --git a/src/Model/PlanFormulaTiered.php b/src/Model/PlanFormulaTiered.php
index e1c3192f2..663ea2dcf 100644
--- a/src/Model/PlanFormulaTiered.php
+++ b/src/Model/PlanFormulaTiered.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PlanFormulaTiered implements PlanPriceFormula
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('brackets', $data)) {
$this->setBrackets($data['brackets']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('minQuantity', $data)) {
$this->setMinQuantity($data['minQuantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFormula(): string
diff --git a/src/Model/PlanFormulaTieredBrackets.php b/src/Model/PlanFormulaTieredBrackets.php
index ee5233cde..bea7b2b3d 100644
--- a/src/Model/PlanFormulaTieredBrackets.php
+++ b/src/Model/PlanFormulaTieredBrackets.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlanFormulaTieredBrackets implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('price', $data)) {
$this->setPrice($data['price']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('maxQuantity', $data)) {
$this->setMaxQuantity($data['maxQuantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrice(): ?float
diff --git a/src/Model/PlanFormulaVolume.php b/src/Model/PlanFormulaVolume.php
index e05815c59..cf9d7f22b 100644
--- a/src/Model/PlanFormulaVolume.php
+++ b/src/Model/PlanFormulaVolume.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PlanFormulaVolume implements PlanPriceFormula
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('brackets', $data)) {
$this->setBrackets($data['brackets']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('minQuantity', $data)) {
$this->setMinQuantity($data['minQuantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFormula(): string
diff --git a/src/Model/PlanFormulaVolumeBrackets.php b/src/Model/PlanFormulaVolumeBrackets.php
index a00409481..0807e2180 100644
--- a/src/Model/PlanFormulaVolumeBrackets.php
+++ b/src/Model/PlanFormulaVolumeBrackets.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlanFormulaVolumeBrackets implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('price', $data)) {
$this->setPrice($data['price']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('maxQuantity', $data)) {
$this->setMaxQuantity($data['maxQuantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrice(): ?float
diff --git a/src/Model/PlanPriceFormulaFactory.php b/src/Model/PlanPriceFormulaFactory.php
index 87d153382..281eb7f9b 100644
--- a/src/Model/PlanPriceFormulaFactory.php
+++ b/src/Model/PlanPriceFormulaFactory.php
@@ -18,14 +18,14 @@
class PlanPriceFormulaFactory
{
- public static function from(array $data = []): PlanPriceFormula
+ public static function from(array $data = [], array $metadata = []): PlanPriceFormula
{
return match ($data['formula']) {
- 'fixed-fee' => PlanFormulaFixedFee::from($data),
- 'flat-rate' => PlanFormulaFlatRate::from($data),
- 'stairstep' => PlanFormulaStairstep::from($data),
- 'tiered' => PlanFormulaTiered::from($data),
- 'volume' => PlanFormulaVolume::from($data),
+ 'fixed-fee' => PlanFormulaFixedFee::from($data, $metadata),
+ 'flat-rate' => PlanFormulaFlatRate::from($data, $metadata),
+ 'stairstep' => PlanFormulaStairstep::from($data, $metadata),
+ 'tiered' => PlanFormulaTiered::from($data, $metadata),
+ 'volume' => PlanFormulaVolume::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/PlanSetup.php b/src/Model/PlanSetup.php
index 0e846e57d..c4c8e6ca6 100644
--- a/src/Model/PlanSetup.php
+++ b/src/Model/PlanSetup.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlanSetup implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('price', $data)) {
$this->setPrice($data['price']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrice(): float
diff --git a/src/Model/PlanTrial.php b/src/Model/PlanTrial.php
index 161ab9f38..ad26fd8c2 100644
--- a/src/Model/PlanTrial.php
+++ b/src/Model/PlanTrial.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlanTrial implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('price', $data)) {
$this->setPrice($data['price']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('period', $data)) {
$this->setPeriod($data['period']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrice(): float
diff --git a/src/Model/PlanTrialPeriod.php b/src/Model/PlanTrialPeriod.php
index f7d22f6e6..90e3ca263 100644
--- a/src/Model/PlanTrialPeriod.php
+++ b/src/Model/PlanTrialPeriod.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlanTrialPeriod implements JsonSerializable
{
+ use HasMetadata;
+
public const UNIT_DAY = 'day';
public const UNIT_WEEK = 'week';
@@ -28,7 +31,7 @@ class PlanTrialPeriod implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('unit', $data)) {
$this->setUnit($data['unit']);
@@ -36,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('length', $data)) {
$this->setLength($data['length']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUnit(): string
diff --git a/src/Model/Plugnpay.php b/src/Model/Plugnpay.php
index e14af43e8..b46ec31c5 100644
--- a/src/Model/Plugnpay.php
+++ b/src/Model/Plugnpay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Plugnpay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Plugnpay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PlugnpayCredentials
diff --git a/src/Model/PlugnpayCredentials.php b/src/Model/PlugnpayCredentials.php
index 031a86368..87dddec36 100644
--- a/src/Model/PlugnpayCredentials.php
+++ b/src/Model/PlugnpayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PlugnpayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publisher-name', $data)) {
$this->setPublisherName($data['publisher-name']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('publisher-password', $data)) {
$this->setPublisherPassword($data['publisher-password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublisherName(): string
diff --git a/src/Model/PostCashier.php b/src/Model/PostCashier.php
index 42c2ee70f..d70d04608 100644
--- a/src/Model/PostCashier.php
+++ b/src/Model/PostCashier.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostCashier implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customerId', $data)) {
$this->setCustomerId($data['customerId']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('pendingPayoutTotal', $data)) {
$this->setPendingPayoutTotal($data['pendingPayoutTotal']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomerId(): string
diff --git a/src/Model/PostCashierDepositLimits.php b/src/Model/PostCashierDepositLimits.php
index c0d353e86..15939a53a 100644
--- a/src/Model/PostCashierDepositLimits.php
+++ b/src/Model/PostCashierDepositLimits.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostCashierDepositLimits implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('minimum', $data)) {
$this->setMinimum($data['minimum']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('maximum', $data)) {
$this->setMaximum($data['maximum']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMinimum(): ?float
diff --git a/src/Model/PostDepositRequest.php b/src/Model/PostDepositRequest.php
index 067100ea7..600f8e89a 100644
--- a/src/Model/PostDepositRequest.php
+++ b/src/Model/PostDepositRequest.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostDepositRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('websiteId', $data)) {
$this->setWebsiteId($data['websiteId']);
@@ -57,11 +60,12 @@ public function __construct(array $data = [])
if (array_key_exists('notificationUrl', $data)) {
$this->setNotificationUrl($data['notificationUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getWebsiteId(): string
diff --git a/src/Model/PostDepositRequestAmountLimits.php b/src/Model/PostDepositRequestAmountLimits.php
index 92ac4b579..3b6e11c8a 100644
--- a/src/Model/PostDepositRequestAmountLimits.php
+++ b/src/Model/PostDepositRequestAmountLimits.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostDepositRequestAmountLimits implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('minimum', $data)) {
$this->setMinimum($data['minimum']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('maximum', $data)) {
$this->setMaximum($data['maximum']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMinimum(): ?float
diff --git a/src/Model/PostDepositRequestCustomAmount.php b/src/Model/PostDepositRequestCustomAmount.php
index d002965e0..ab8a81629 100644
--- a/src/Model/PostDepositRequestCustomAmount.php
+++ b/src/Model/PostDepositRequestCustomAmount.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostDepositRequestCustomAmount implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('minimum', $data)) {
$this->setMinimum($data['minimum']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('maximum', $data)) {
$this->setMaximum($data['maximum']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMinimum(): float
diff --git a/src/Model/PostDisputeRequest.php b/src/Model/PostDisputeRequest.php
index 7c3f66f06..428304dd2 100644
--- a/src/Model/PostDisputeRequest.php
+++ b/src/Model/PostDisputeRequest.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostDisputeRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const REASON_CODE_0 = '0';
public const REASON_CODE_00 = '00';
@@ -310,6 +313,36 @@ class PostDisputeRequest implements JsonSerializable
public const REASON_CODE_4999 = '4999';
+ public const REASON_CODE_4534 = '4534';
+
+ public const REASON_CODE_4541 = '4541';
+
+ public const REASON_CODE_4542 = '4542';
+
+ public const REASON_CODE_4550 = '4550';
+
+ public const REASON_CODE_4553 = '4553';
+
+ public const REASON_CODE_4586 = '4586';
+
+ public const REASON_CODE_4752 = '4752';
+
+ public const REASON_CODE_4753 = '4753';
+
+ public const REASON_CODE_4755 = '4755';
+
+ public const REASON_CODE_4865 = '4865';
+
+ public const REASON_CODE_4866 = '4866';
+
+ public const REASON_CODE_4867 = '4867';
+
+ public const REASON_CODE_7010 = '7010';
+
+ public const REASON_CODE_7030 = '7030';
+
+ public const REASON_CODE_8002 = '8002';
+
public const REASON_CODE_A = 'A';
public const REASON_CODE_A01 = 'A01';
@@ -576,7 +609,7 @@ class PostDisputeRequest implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactionId', $data)) {
$this->setTransactionId($data['transactionId']);
@@ -608,11 +641,12 @@ public function __construct(array $data = [])
if (array_key_exists('deadlineTime', $data)) {
$this->setDeadlineTime($data['deadlineTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTransactionId(): string
diff --git a/src/Model/PostFileRequestFactory.php b/src/Model/PostFileRequestFactory.php
index 9e4cfe361..1406be51a 100644
--- a/src/Model/PostFileRequestFactory.php
+++ b/src/Model/PostFileRequestFactory.php
@@ -18,13 +18,13 @@
class PostFileRequestFactory
{
- public static function from(array $data = []): PostFileRequest
+ public static function from(array $data = [], array $metadata = []): PostFileRequest
{
if (isset($data['file'])) {
- return FileCreateFromInline::from($data);
+ return FileCreateFromInline::from($data, $metadata);
}
if (isset($data['url'])) {
- return FileCreateFromUrl::from($data);
+ return FileCreateFromUrl::from($data, $metadata);
}
throw new UnknownDiscriminatorValueException();
diff --git a/src/Model/PostFinance.php b/src/Model/PostFinance.php
index 7def8f6ac..fd17faaf6 100644
--- a/src/Model/PostFinance.php
+++ b/src/Model/PostFinance.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class PostFinance extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'PostFinance',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PostFinanceCredentials
diff --git a/src/Model/PostFinanceCredentials.php b/src/Model/PostFinanceCredentials.php
index 6d13b2b56..90824ab57 100644
--- a/src/Model/PostFinanceCredentials.php
+++ b/src/Model/PostFinanceCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostFinanceCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('pspId', $data)) {
$this->setPspId($data['pspId']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('sftpKeyPassphrase', $data)) {
$this->setSftpKeyPassphrase($data['sftpKeyPassphrase']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPspId(): string
diff --git a/src/Model/PostFinanceSettings.php b/src/Model/PostFinanceSettings.php
index e3ea13f72..66169ca57 100644
--- a/src/Model/PostFinanceSettings.php
+++ b/src/Model/PostFinanceSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostFinanceSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('skipPaymentFileUpload', $data)) {
$this->setSkipPaymentFileUpload($data['skipPaymentFileUpload']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('enableAliasAuthentication', $data)) {
$this->setEnableAliasAuthentication($data['enableAliasAuthentication']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSkipPaymentFileUpload(): ?bool
diff --git a/src/Model/PostOrganizationExportRequest.php b/src/Model/PostOrganizationExportRequest.php
index e8b039a76..614a66fff 100644
--- a/src/Model/PostOrganizationExportRequest.php
+++ b/src/Model/PostOrganizationExportRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostOrganizationExportRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('includeFiles', $data)) {
$this->setIncludeFiles($data['includeFiles']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIncludeFiles(): ?bool
diff --git a/src/Model/PostOrganizationRequest.php b/src/Model/PostOrganizationRequest.php
index 12097fac7..0e29aef4e 100644
--- a/src/Model/PostOrganizationRequest.php
+++ b/src/Model/PostOrganizationRequest.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostOrganizationRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -87,11 +90,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/PostPaymentInstrumentRequest.php b/src/Model/PostPaymentInstrumentRequest.php
index 132cb76a9..9d96577c2 100644
--- a/src/Model/PostPaymentInstrumentRequest.php
+++ b/src/Model/PostPaymentInstrumentRequest.php
@@ -18,4 +18,15 @@
interface PostPaymentInstrumentRequest extends JsonSerializable
{
+ public function getCustomerId(): string;
+
+ public function setCustomerId(string $customerId): static;
+
+ public function getUseAsBackup(): ?bool;
+
+ public function setUseAsBackup(null|bool $useAsBackup): static;
+
+ public function getCustomFields(): ?array;
+
+ public function setCustomFields(null|array $customFields): static;
}
diff --git a/src/Model/PostPaymentInstrumentRequestFactory.php b/src/Model/PostPaymentInstrumentRequestFactory.php
index d1d0118c5..037d10ff6 100644
--- a/src/Model/PostPaymentInstrumentRequestFactory.php
+++ b/src/Model/PostPaymentInstrumentRequestFactory.php
@@ -18,175 +18,176 @@
class PostPaymentInstrumentRequestFactory
{
- public static function from(array $data = []): PostPaymentInstrumentRequest
+ public static function from(array $data = [], array $metadata = []): PostPaymentInstrumentRequest
{
if (isset($data['token'])) {
- return PaymentInstrumentCreateToken::from($data);
+ return PaymentInstrumentCreateToken::from($data, $metadata);
}
return match ($data['method']) {
- 'AdvCash' => AlternativeInstrument::from($data),
- 'Aera' => AlternativeInstrument::from($data),
- 'Affirm' => AlternativeInstrument::from($data),
- 'Afterpay' => AlternativeInstrument::from($data),
- 'Aircash' => AlternativeInstrument::from($data),
- 'Alfa-click' => AlternativeInstrument::from($data),
- 'Alipay' => AlternativeInstrument::from($data),
- 'AstroPay Card' => AlternativeInstrument::from($data),
- 'AstroPay-GO' => AlternativeInstrument::from($data),
- 'Baloto' => AlternativeInstrument::from($data),
- 'Bancontact' => AlternativeInstrument::from($data),
- 'Bancontact-mobile' => AlternativeInstrument::from($data),
- 'BankReferenced' => AlternativeInstrument::from($data),
- 'Beeline' => AlternativeInstrument::from($data),
- 'Belfius-direct-net' => AlternativeInstrument::from($data),
- 'Bizum' => AlternativeInstrument::from($data),
- 'Boleto' => AlternativeInstrument::from($data),
- 'CASHlib' => AlternativeInstrument::from($data),
- 'CODVoucher' => AlternativeInstrument::from($data),
- 'CashToCode' => AlternativeInstrument::from($data),
- 'China UnionPay' => AlternativeInstrument::from($data),
- 'Clearpay' => AlternativeInstrument::from($data),
- 'Cleo' => AlternativeInstrument::from($data),
- 'Conekta-oxxo' => AlternativeInstrument::from($data),
- 'Cupon-de-pagos' => AlternativeInstrument::from($data),
- 'Directa24Card' => AlternativeInstrument::from($data),
- 'EPS' => AlternativeInstrument::from($data),
- 'Efecty' => AlternativeInstrument::from($data),
- 'FasterPay' => AlternativeInstrument::from($data),
- 'Flexepin' => AlternativeInstrument::from($data),
- 'Giropay' => AlternativeInstrument::from($data),
- 'Google Pay' => AlternativeInstrument::from($data),
- 'Gpaysafe' => AlternativeInstrument::from($data),
- 'ING-homepay' => AlternativeInstrument::from($data),
- 'INOVAPAY-pin' => AlternativeInstrument::from($data),
- 'INOVAPAY-wallet' => AlternativeInstrument::from($data),
- 'InstaDebit' => AlternativeInstrument::from($data),
- 'InstantPayments' => AlternativeInstrument::from($data),
- 'Interac' => AlternativeInstrument::from($data),
- 'Interac-eTransfer' => AlternativeInstrument::from($data),
- 'Interac-online' => AlternativeInstrument::from($data),
- 'Jeton' => AlternativeInstrument::from($data),
- 'JetonCash' => AlternativeInstrument::from($data),
- 'KNOT' => AlternativeInstrument::from($data),
- 'KakaoPay' => AlternativeInstrument::from($data),
- 'Klarna' => AlternativeInstrument::from($data),
- 'MTS' => AlternativeInstrument::from($data),
- 'Matrix' => AlternativeInstrument::from($data),
- 'MaxiCash' => AlternativeInstrument::from($data),
- 'Megafon' => AlternativeInstrument::from($data),
- 'MercadoPago' => AlternativeInstrument::from($data),
- 'MiFinity-eWallet' => AlternativeInstrument::from($data),
- 'MobilePay' => AlternativeInstrument::from($data),
- 'MuchBetter' => AlternativeInstrument::from($data),
- 'MuchBetterVoucher' => AlternativeInstrument::from($data),
- 'Multibanco' => AlternativeInstrument::from($data),
- 'Neosurf' => AlternativeInstrument::from($data),
- 'Netbanking' => AlternativeInstrument::from($data),
- 'Neteller' => AlternativeInstrument::from($data),
- 'Nordea-Solo' => AlternativeInstrument::from($data),
- 'OXXO' => AlternativeInstrument::from($data),
- 'OchaPay' => AlternativeInstrument::from($data),
- 'Onlineueberweisen' => AlternativeInstrument::from($data),
- 'P24' => AlternativeInstrument::from($data),
- 'PIX' => AlternativeInstrument::from($data),
- 'POLi' => AlternativeInstrument::from($data),
- 'Pagadito' => AlternativeInstrument::from($data),
- 'PagoEffectivo' => AlternativeInstrument::from($data),
- 'Pagsmile-deposit-express' => AlternativeInstrument::from($data),
- 'Pagsmile-lottery' => AlternativeInstrument::from($data),
- 'Pay4Fun' => AlternativeInstrument::from($data),
- 'PayCash' => AlternativeInstrument::from($data),
- 'PayTabs' => AlternativeInstrument::from($data),
- 'Payco' => AlternativeInstrument::from($data),
- 'Payeer' => AlternativeInstrument::from($data),
- 'PaymentAsia-crypto' => AlternativeInstrument::from($data),
- 'Paymero' => AlternativeInstrument::from($data),
- 'Paynote' => AlternativeInstrument::from($data),
- 'Paysafecard' => AlternativeInstrument::from($data),
- 'Paysafecash' => AlternativeInstrument::from($data),
- 'Perfect-money' => AlternativeInstrument::from($data),
- 'PhonePe' => AlternativeInstrument::from($data),
- 'Piastrix' => AlternativeInstrument::from($data),
- 'PinPay' => AlternativeInstrument::from($data),
- 'PostFinance-card' => AlternativeInstrument::from($data),
- 'PostFinance-e-finance' => AlternativeInstrument::from($data),
- 'QIWI' => AlternativeInstrument::from($data),
- 'QPay' => AlternativeInstrument::from($data),
- 'QQPay' => AlternativeInstrument::from($data),
- 'Resurs' => AlternativeInstrument::from($data),
- 'SEPA' => AlternativeInstrument::from($data),
- 'SMSVoucher' => AlternativeInstrument::from($data),
- 'SafetyPay' => AlternativeInstrument::from($data),
- 'Samsung Pay' => AlternativeInstrument::from($data),
- 'Skrill' => AlternativeInstrument::from($data),
- 'Skrill Rapid Transfer' => AlternativeInstrument::from($data),
- 'Sofort' => AlternativeInstrument::from($data),
- 'SparkPay' => AlternativeInstrument::from($data),
- 'Tele2' => AlternativeInstrument::from($data),
- 'Terminaly-RF' => AlternativeInstrument::from($data),
- 'ToditoCash-card' => AlternativeInstrument::from($data),
- 'Trustly' => AlternativeInstrument::from($data),
- 'Tupay' => AlternativeInstrument::from($data),
- 'UPI' => AlternativeInstrument::from($data),
- 'UPayCard' => AlternativeInstrument::from($data),
- 'USD-coin' => AlternativeInstrument::from($data),
- 'VCreditos' => AlternativeInstrument::from($data),
- 'VenusPoint' => AlternativeInstrument::from($data),
- 'Wallet88' => AlternativeInstrument::from($data),
- 'WeChat Pay' => AlternativeInstrument::from($data),
- 'Webmoney' => AlternativeInstrument::from($data),
- 'Webpay' => AlternativeInstrument::from($data),
- 'Webpay Card' => AlternativeInstrument::from($data),
- 'Webpay-2' => AlternativeInstrument::from($data),
- 'XPay-P2P' => AlternativeInstrument::from($data),
- 'XPay-QR' => AlternativeInstrument::from($data),
- 'Yandex-money' => AlternativeInstrument::from($data),
- 'Zimpler' => AlternativeInstrument::from($data),
- 'Zip' => AlternativeInstrument::from($data),
- 'Zotapay' => AlternativeInstrument::from($data),
- 'bank-transfer' => AlternativeInstrument::from($data),
- 'bank-transfer-2' => AlternativeInstrument::from($data),
- 'bank-transfer-3' => AlternativeInstrument::from($data),
- 'bank-transfer-4' => AlternativeInstrument::from($data),
- 'bank-transfer-5' => AlternativeInstrument::from($data),
- 'bank-transfer-6' => AlternativeInstrument::from($data),
- 'bank-transfer-7' => AlternativeInstrument::from($data),
- 'bank-transfer-8' => AlternativeInstrument::from($data),
- 'bank-transfer-9' => AlternativeInstrument::from($data),
- 'bitcoin' => AlternativeInstrument::from($data),
- 'cash' => AlternativeInstrument::from($data),
- 'cash-deposit' => AlternativeInstrument::from($data),
- 'check' => AlternativeInstrument::from($data),
- 'cryptocurrency' => AlternativeInstrument::from($data),
- 'domestic-cards' => AlternativeInstrument::from($data),
- 'ePay.bg' => AlternativeInstrument::from($data),
- 'eZeeWallet' => AlternativeInstrument::from($data),
- 'ecoPayz' => AlternativeInstrument::from($data),
- 'ecoPayzTurkey' => AlternativeInstrument::from($data),
- 'ecoVoucher' => AlternativeInstrument::from($data),
- 'iDEAL' => AlternativeInstrument::from($data),
- 'iDebit' => AlternativeInstrument::from($data),
- 'iWallet' => AlternativeInstrument::from($data),
- 'instant-bank-transfer' => AlternativeInstrument::from($data),
- 'invoice' => AlternativeInstrument::from($data),
- 'jpay' => AlternativeInstrument::from($data),
- 'loonie' => AlternativeInstrument::from($data),
- 'miscellaneous' => AlternativeInstrument::from($data),
- 'online-bank-transfer' => AlternativeInstrument::from($data),
- 'oriental-wallet' => AlternativeInstrument::from($data),
- 'phone' => AlternativeInstrument::from($data),
- 'plaid-account' => AlternativeInstrument::from($data),
- 'rapyd-checkout' => AlternativeInstrument::from($data),
- 'swift-dbt' => AlternativeInstrument::from($data),
- 'voucher' => AlternativeInstrument::from($data),
- 'voucher-2' => AlternativeInstrument::from($data),
- 'voucher-3' => AlternativeInstrument::from($data),
- 'voucher-4' => AlternativeInstrument::from($data),
- 'wire' => AlternativeInstrument::from($data),
- 'ach' => BankAccountCreatePlain::from($data),
- 'payment-card' => PaymentCardCreatePlain::from($data),
- 'paypal' => PayPalAccount::from($data),
+ 'AdvCash' => AlternativeInstrument::from($data, $metadata),
+ 'Aera' => AlternativeInstrument::from($data, $metadata),
+ 'Affirm' => AlternativeInstrument::from($data, $metadata),
+ 'Afterpay' => AlternativeInstrument::from($data, $metadata),
+ 'Aircash' => AlternativeInstrument::from($data, $metadata),
+ 'Alfa-click' => AlternativeInstrument::from($data, $metadata),
+ 'Alipay' => AlternativeInstrument::from($data, $metadata),
+ 'AstroPay Card' => AlternativeInstrument::from($data, $metadata),
+ 'AstroPay-GO' => AlternativeInstrument::from($data, $metadata),
+ 'Baloto' => AlternativeInstrument::from($data, $metadata),
+ 'Bancontact' => AlternativeInstrument::from($data, $metadata),
+ 'Bancontact-mobile' => AlternativeInstrument::from($data, $metadata),
+ 'BankReferenced' => AlternativeInstrument::from($data, $metadata),
+ 'Beeline' => AlternativeInstrument::from($data, $metadata),
+ 'Belfius-direct-net' => AlternativeInstrument::from($data, $metadata),
+ 'Bizum' => AlternativeInstrument::from($data, $metadata),
+ 'Boleto' => AlternativeInstrument::from($data, $metadata),
+ 'CASHlib' => AlternativeInstrument::from($data, $metadata),
+ 'CODVoucher' => AlternativeInstrument::from($data, $metadata),
+ 'CashToCode' => AlternativeInstrument::from($data, $metadata),
+ 'China UnionPay' => AlternativeInstrument::from($data, $metadata),
+ 'Clearpay' => AlternativeInstrument::from($data, $metadata),
+ 'Cleo' => AlternativeInstrument::from($data, $metadata),
+ 'Conekta-oxxo' => AlternativeInstrument::from($data, $metadata),
+ 'Cupon-de-pagos' => AlternativeInstrument::from($data, $metadata),
+ 'Directa24Card' => AlternativeInstrument::from($data, $metadata),
+ 'EPS' => AlternativeInstrument::from($data, $metadata),
+ 'Efecty' => AlternativeInstrument::from($data, $metadata),
+ 'FasterPay' => AlternativeInstrument::from($data, $metadata),
+ 'Flexepin' => AlternativeInstrument::from($data, $metadata),
+ 'Giropay' => AlternativeInstrument::from($data, $metadata),
+ 'Google Pay' => AlternativeInstrument::from($data, $metadata),
+ 'Gpaysafe' => AlternativeInstrument::from($data, $metadata),
+ 'ING-homepay' => AlternativeInstrument::from($data, $metadata),
+ 'INOVAPAY-pin' => AlternativeInstrument::from($data, $metadata),
+ 'INOVAPAY-wallet' => AlternativeInstrument::from($data, $metadata),
+ 'InstaDebit' => AlternativeInstrument::from($data, $metadata),
+ 'InstantPayments' => AlternativeInstrument::from($data, $metadata),
+ 'Interac' => AlternativeInstrument::from($data, $metadata),
+ 'Interac-eTransfer' => AlternativeInstrument::from($data, $metadata),
+ 'Interac-online' => AlternativeInstrument::from($data, $metadata),
+ 'Jeton' => AlternativeInstrument::from($data, $metadata),
+ 'JetonCash' => AlternativeInstrument::from($data, $metadata),
+ 'KNOT' => AlternativeInstrument::from($data, $metadata),
+ 'KakaoPay' => AlternativeInstrument::from($data, $metadata),
+ 'Klarna' => AlternativeInstrument::from($data, $metadata),
+ 'MTS' => AlternativeInstrument::from($data, $metadata),
+ 'Matrix' => AlternativeInstrument::from($data, $metadata),
+ 'MaxiCash' => AlternativeInstrument::from($data, $metadata),
+ 'Megafon' => AlternativeInstrument::from($data, $metadata),
+ 'MercadoPago' => AlternativeInstrument::from($data, $metadata),
+ 'MiFinity-eWallet' => AlternativeInstrument::from($data, $metadata),
+ 'MobilePay' => AlternativeInstrument::from($data, $metadata),
+ 'MuchBetter' => AlternativeInstrument::from($data, $metadata),
+ 'MuchBetterVoucher' => AlternativeInstrument::from($data, $metadata),
+ 'Multibanco' => AlternativeInstrument::from($data, $metadata),
+ 'Neosurf' => AlternativeInstrument::from($data, $metadata),
+ 'Netbanking' => AlternativeInstrument::from($data, $metadata),
+ 'Neteller' => AlternativeInstrument::from($data, $metadata),
+ 'Nordea-Solo' => AlternativeInstrument::from($data, $metadata),
+ 'OXXO' => AlternativeInstrument::from($data, $metadata),
+ 'OchaPay' => AlternativeInstrument::from($data, $metadata),
+ 'Onlineueberweisen' => AlternativeInstrument::from($data, $metadata),
+ 'P24' => AlternativeInstrument::from($data, $metadata),
+ 'PIX' => AlternativeInstrument::from($data, $metadata),
+ 'POLi' => AlternativeInstrument::from($data, $metadata),
+ 'Pagadito' => AlternativeInstrument::from($data, $metadata),
+ 'PagoEffectivo' => AlternativeInstrument::from($data, $metadata),
+ 'Pagsmile-deposit-express' => AlternativeInstrument::from($data, $metadata),
+ 'Pagsmile-lottery' => AlternativeInstrument::from($data, $metadata),
+ 'Pay4Fun' => AlternativeInstrument::from($data, $metadata),
+ 'PayCash' => AlternativeInstrument::from($data, $metadata),
+ 'PayTabs' => AlternativeInstrument::from($data, $metadata),
+ 'Payco' => AlternativeInstrument::from($data, $metadata),
+ 'Payeer' => AlternativeInstrument::from($data, $metadata),
+ 'PaymentAsia-crypto' => AlternativeInstrument::from($data, $metadata),
+ 'Paymero' => AlternativeInstrument::from($data, $metadata),
+ 'Paynote' => AlternativeInstrument::from($data, $metadata),
+ 'Paysafecard' => AlternativeInstrument::from($data, $metadata),
+ 'Paysafecash' => AlternativeInstrument::from($data, $metadata),
+ 'Perfect-money' => AlternativeInstrument::from($data, $metadata),
+ 'PhonePe' => AlternativeInstrument::from($data, $metadata),
+ 'Piastrix' => AlternativeInstrument::from($data, $metadata),
+ 'PinPay' => AlternativeInstrument::from($data, $metadata),
+ 'PostFinance-card' => AlternativeInstrument::from($data, $metadata),
+ 'PostFinance-e-finance' => AlternativeInstrument::from($data, $metadata),
+ 'QIWI' => AlternativeInstrument::from($data, $metadata),
+ 'QPay' => AlternativeInstrument::from($data, $metadata),
+ 'QQPay' => AlternativeInstrument::from($data, $metadata),
+ 'Resurs' => AlternativeInstrument::from($data, $metadata),
+ 'SEPA' => AlternativeInstrument::from($data, $metadata),
+ 'SMSVoucher' => AlternativeInstrument::from($data, $metadata),
+ 'SafetyPay' => AlternativeInstrument::from($data, $metadata),
+ 'Samsung Pay' => AlternativeInstrument::from($data, $metadata),
+ 'Skrill' => AlternativeInstrument::from($data, $metadata),
+ 'Skrill Rapid Transfer' => AlternativeInstrument::from($data, $metadata),
+ 'Sofort' => AlternativeInstrument::from($data, $metadata),
+ 'SparkPay' => AlternativeInstrument::from($data, $metadata),
+ 'Tele2' => AlternativeInstrument::from($data, $metadata),
+ 'Terminaly-RF' => AlternativeInstrument::from($data, $metadata),
+ 'ToditoCash-card' => AlternativeInstrument::from($data, $metadata),
+ 'Trustly' => AlternativeInstrument::from($data, $metadata),
+ 'Tupay' => AlternativeInstrument::from($data, $metadata),
+ 'UPI' => AlternativeInstrument::from($data, $metadata),
+ 'UPayCard' => AlternativeInstrument::from($data, $metadata),
+ 'USD-coin' => AlternativeInstrument::from($data, $metadata),
+ 'VCreditos' => AlternativeInstrument::from($data, $metadata),
+ 'VenusPoint' => AlternativeInstrument::from($data, $metadata),
+ 'Viva' => AlternativeInstrument::from($data, $metadata),
+ 'Wallet88' => AlternativeInstrument::from($data, $metadata),
+ 'WeChat Pay' => AlternativeInstrument::from($data, $metadata),
+ 'Webmoney' => AlternativeInstrument::from($data, $metadata),
+ 'Webpay' => AlternativeInstrument::from($data, $metadata),
+ 'Webpay Card' => AlternativeInstrument::from($data, $metadata),
+ 'Webpay-2' => AlternativeInstrument::from($data, $metadata),
+ 'XPay-P2P' => AlternativeInstrument::from($data, $metadata),
+ 'XPay-QR' => AlternativeInstrument::from($data, $metadata),
+ 'Yandex-money' => AlternativeInstrument::from($data, $metadata),
+ 'Zimpler' => AlternativeInstrument::from($data, $metadata),
+ 'Zip' => AlternativeInstrument::from($data, $metadata),
+ 'Zotapay' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-2' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-3' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-4' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-5' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-6' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-7' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-8' => AlternativeInstrument::from($data, $metadata),
+ 'bank-transfer-9' => AlternativeInstrument::from($data, $metadata),
+ 'bitcoin' => AlternativeInstrument::from($data, $metadata),
+ 'cash' => AlternativeInstrument::from($data, $metadata),
+ 'cash-deposit' => AlternativeInstrument::from($data, $metadata),
+ 'check' => AlternativeInstrument::from($data, $metadata),
+ 'cryptocurrency' => AlternativeInstrument::from($data, $metadata),
+ 'domestic-cards' => AlternativeInstrument::from($data, $metadata),
+ 'ePay.bg' => AlternativeInstrument::from($data, $metadata),
+ 'eZeeWallet' => AlternativeInstrument::from($data, $metadata),
+ 'ecoPayz' => AlternativeInstrument::from($data, $metadata),
+ 'ecoPayzTurkey' => AlternativeInstrument::from($data, $metadata),
+ 'ecoVoucher' => AlternativeInstrument::from($data, $metadata),
+ 'iDEAL' => AlternativeInstrument::from($data, $metadata),
+ 'iDebit' => AlternativeInstrument::from($data, $metadata),
+ 'iWallet' => AlternativeInstrument::from($data, $metadata),
+ 'instant-bank-transfer' => AlternativeInstrument::from($data, $metadata),
+ 'invoice' => AlternativeInstrument::from($data, $metadata),
+ 'jpay' => AlternativeInstrument::from($data, $metadata),
+ 'loonie' => AlternativeInstrument::from($data, $metadata),
+ 'miscellaneous' => AlternativeInstrument::from($data, $metadata),
+ 'online-bank-transfer' => AlternativeInstrument::from($data, $metadata),
+ 'oriental-wallet' => AlternativeInstrument::from($data, $metadata),
+ 'phone' => AlternativeInstrument::from($data, $metadata),
+ 'plaid-account' => AlternativeInstrument::from($data, $metadata),
+ 'rapyd-checkout' => AlternativeInstrument::from($data, $metadata),
+ 'swift-dbt' => AlternativeInstrument::from($data, $metadata),
+ 'voucher' => AlternativeInstrument::from($data, $metadata),
+ 'voucher-2' => AlternativeInstrument::from($data, $metadata),
+ 'voucher-3' => AlternativeInstrument::from($data, $metadata),
+ 'voucher-4' => AlternativeInstrument::from($data, $metadata),
+ 'wire' => AlternativeInstrument::from($data, $metadata),
+ 'ach' => BankAccountCreatePlainFactory::from($data, $metadata),
+ 'payment-card' => PaymentCardCreatePlain::from($data, $metadata),
+ 'paypal' => PayPalAccount::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/PostPayoutRequest.php b/src/Model/PostPayoutRequest.php
index 1143e4e28..07807521a 100644
--- a/src/Model/PostPayoutRequest.php
+++ b/src/Model/PostPayoutRequest.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostPayoutRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('websiteId', $data)) {
$this->setWebsiteId($data['websiteId']);
@@ -78,11 +81,12 @@ public function __construct(array $data = [])
if (array_key_exists('payoutRequestId', $data)) {
$this->setPayoutRequestId($data['payoutRequestId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getWebsiteId(): string
diff --git a/src/Model/PostPayoutRequestAllocationRequest.php b/src/Model/PostPayoutRequestAllocationRequest.php
index 68a5b6171..7bb9fbf68 100644
--- a/src/Model/PostPayoutRequestAllocationRequest.php
+++ b/src/Model/PostPayoutRequestAllocationRequest.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostPayoutRequestAllocationRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('payoutRequestId', $data)) {
$this->setPayoutRequestId($data['payoutRequestId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPayoutRequestId(): string
diff --git a/src/Model/PostPayoutRequestAllocationsProcessRequest.php b/src/Model/PostPayoutRequestAllocationsProcessRequest.php
new file mode 100644
index 000000000..f90dea506
--- /dev/null
+++ b/src/Model/PostPayoutRequestAllocationsProcessRequest.php
@@ -0,0 +1,66 @@
+setAllocationIds($data['allocationIds']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ /**
+ * @return string[]
+ */
+ public function getAllocationIds(): array
+ {
+ return $this->fields['allocationIds'];
+ }
+
+ /**
+ * @param string[] $allocationIds
+ */
+ public function setAllocationIds(array $allocationIds): static
+ {
+ $this->fields['allocationIds'] = $allocationIds;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('allocationIds', $this->fields)) {
+ $data['allocationIds'] = $this->fields['allocationIds'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/PostPayoutRequestAutoAllocationRequest.php b/src/Model/PostPayoutRequestAutoAllocationRequest.php
index 5e366afe1..2ec32ecc1 100644
--- a/src/Model/PostPayoutRequestAutoAllocationRequest.php
+++ b/src/Model/PostPayoutRequestAutoAllocationRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostPayoutRequestAutoAllocationRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('payoutRequestId', $data)) {
$this->setPayoutRequestId($data['payoutRequestId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPayoutRequestId(): string
diff --git a/src/Model/PostPayoutRequestBatchBlockRequest.php b/src/Model/PostPayoutRequestBatchBlockRequest.php
new file mode 100644
index 000000000..aae078e73
--- /dev/null
+++ b/src/Model/PostPayoutRequestBatchBlockRequest.php
@@ -0,0 +1,94 @@
+setReason($data['reason']);
+ }
+ if (array_key_exists('description', $data)) {
+ $this->setDescription($data['description']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getReason(): string
+ {
+ return $this->fields['reason'];
+ }
+
+ public function setReason(string $reason): static
+ {
+ $this->fields['reason'] = $reason;
+
+ return $this;
+ }
+
+ public function getDescription(): ?string
+ {
+ return $this->fields['description'] ?? null;
+ }
+
+ public function setDescription(null|string $description): static
+ {
+ $this->fields['description'] = $description;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('reason', $this->fields)) {
+ $data['reason'] = $this->fields['reason'];
+ }
+ if (array_key_exists('description', $this->fields)) {
+ $data['description'] = $this->fields['description'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/PostPayoutRequestBatchRequest.php b/src/Model/PostPayoutRequestBatchRequest.php
new file mode 100644
index 000000000..2cbca3bff
--- /dev/null
+++ b/src/Model/PostPayoutRequestBatchRequest.php
@@ -0,0 +1,24 @@
+setPayoutRequestIds($data['payoutRequestIds']);
+ }
+ if (array_key_exists('description', $data)) {
+ $this->setDescription($data['description']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ /**
+ * @return string[]
+ */
+ public function getPayoutRequestIds(): array
+ {
+ return $this->fields['payoutRequestIds'];
+ }
+
+ /**
+ * @param string[] $payoutRequestIds
+ */
+ public function setPayoutRequestIds(array $payoutRequestIds): static
+ {
+ $this->fields['payoutRequestIds'] = $payoutRequestIds;
+
+ return $this;
+ }
+
+ public function getDescription(): ?string
+ {
+ return $this->fields['description'] ?? null;
+ }
+
+ public function setDescription(null|string $description): static
+ {
+ $this->fields['description'] = $description;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('payoutRequestIds', $this->fields)) {
+ $data['payoutRequestIds'] = $this->fields['payoutRequestIds'];
+ }
+ if (array_key_exists('description', $this->fields)) {
+ $data['description'] = $this->fields['description'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/PostPayoutRequestBatchRequestFactory.php b/src/Model/PostPayoutRequestBatchRequestFactory.php
new file mode 100644
index 000000000..b6e527eb4
--- /dev/null
+++ b/src/Model/PostPayoutRequestBatchRequestFactory.php
@@ -0,0 +1,32 @@
+setFilter($data['filter']);
+ }
+ if (array_key_exists('description', $data)) {
+ $this->setDescription($data['description']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getFilter(): string
+ {
+ return $this->fields['filter'];
+ }
+
+ public function setFilter(string $filter): static
+ {
+ $this->fields['filter'] = $filter;
+
+ return $this;
+ }
+
+ public function getDescription(): ?string
+ {
+ return $this->fields['description'] ?? null;
+ }
+
+ public function setDescription(null|string $description): static
+ {
+ $this->fields['description'] = $description;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('filter', $this->fields)) {
+ $data['filter'] = $this->fields['filter'];
+ }
+ if (array_key_exists('description', $this->fields)) {
+ $data['description'] = $this->fields['description'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/PostPermissionsEmulationRequest.php b/src/Model/PostPermissionsEmulationRequest.php
index ce4555618..e70e536a9 100644
--- a/src/Model/PostPermissionsEmulationRequest.php
+++ b/src/Model/PostPermissionsEmulationRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostPermissionsEmulationRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('permissions', $data)) {
$this->setPermissions($data['permissions']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/PostReadyToPayFactory.php b/src/Model/PostReadyToPayFactory.php
index 4aaf21a2e..6287e9e19 100644
--- a/src/Model/PostReadyToPayFactory.php
+++ b/src/Model/PostReadyToPayFactory.php
@@ -18,13 +18,13 @@
class PostReadyToPayFactory
{
- public static function from(array $data = []): PostReadyToPay
+ public static function from(array $data = [], array $metadata = []): PostReadyToPay
{
if (isset($data['amount']) || isset($data['currency'])) {
- return ReadyToPayAmount::from($data);
+ return ReadyToPayAmount::from($data, $metadata);
}
if (isset($data['items'])) {
- return ReadyToPayItems::from($data);
+ return ReadyToPayItems::from($data, $metadata);
}
throw new UnknownDiscriminatorValueException();
diff --git a/src/Model/PostTagAmlCheckCollectionRequest.php b/src/Model/PostTagAmlCheckCollectionRequest.php
index cee6c8d33..6e9ceab9e 100644
--- a/src/Model/PostTagAmlCheckCollectionRequest.php
+++ b/src/Model/PostTagAmlCheckCollectionRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostTagAmlCheckCollectionRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amlCheckIds', $data)) {
$this->setAmlCheckIds($data['amlCheckIds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/PostTagCustomerCollectionRequest.php b/src/Model/PostTagCustomerCollectionRequest.php
index 248e17d95..96a51c4ab 100644
--- a/src/Model/PostTagCustomerCollectionRequest.php
+++ b/src/Model/PostTagCustomerCollectionRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostTagCustomerCollectionRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customerIds', $data)) {
$this->setCustomerIds($data['customerIds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/PostTagKycDocumentCollectionRequest.php b/src/Model/PostTagKycDocumentCollectionRequest.php
index f7577b0e7..4d44438e3 100644
--- a/src/Model/PostTagKycDocumentCollectionRequest.php
+++ b/src/Model/PostTagKycDocumentCollectionRequest.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostTagKycDocumentCollectionRequest implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('kycDocumentIds', $data)) {
$this->setKycDocumentIds($data['kycDocumentIds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/PostTransactionRequest.php b/src/Model/PostTransactionRequest.php
index dee31dcf6..99b9f00fc 100644
--- a/src/Model/PostTransactionRequest.php
+++ b/src/Model/PostTransactionRequest.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostTransactionRequest implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_SALE = 'sale';
public const TYPE_AUTHORIZE = 'authorize';
@@ -28,7 +31,7 @@ class PostTransactionRequest implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('upsertCustomer', $data)) {
$this->setUpsertCustomer($data['upsertCustomer']);
@@ -90,11 +93,12 @@ public function __construct(array $data = [])
if (array_key_exists('processedTime', $data)) {
$this->setProcessedTime($data['processedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUpsertCustomer(): ?bool
diff --git a/src/Model/PostmarkCredential.php b/src/Model/PostmarkCredential.php
index abec5bbb1..2ad72e76c 100644
--- a/src/Model/PostmarkCredential.php
+++ b/src/Model/PostmarkCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class PostmarkCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -27,7 +30,7 @@ class PostmarkCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/Powertranz.php b/src/Model/Powertranz.php
index 3736e72da..dce558bc5 100644
--- a/src/Model/Powertranz.php
+++ b/src/Model/Powertranz.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Powertranz extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Powertranz',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): PowertranzCredentials
diff --git a/src/Model/PowertranzCredentials.php b/src/Model/PowertranzCredentials.php
index 1ffed9f0c..c70a85f43 100644
--- a/src/Model/PowertranzCredentials.php
+++ b/src/Model/PowertranzCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PowertranzCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Product.php b/src/Model/Product.php
index 616f26c14..7bb12a617 100644
--- a/src/Model/Product.php
+++ b/src/Model/Product.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Product implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -63,11 +66,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/ProductRecognition.php b/src/Model/ProductRecognition.php
index 9ad206154..257ae1a42 100644
--- a/src/Model/ProductRecognition.php
+++ b/src/Model/ProductRecognition.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProductRecognition implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('debitAccountId', $data)) {
$this->setDebitAccountId($data['debitAccountId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('creditAccountId', $data)) {
$this->setCreditAccountId($data['creditAccountId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDebitAccountId(): ?string
diff --git a/src/Model/Profile.php b/src/Model/Profile.php
index 7f65c4328..23f7e27e9 100644
--- a/src/Model/Profile.php
+++ b/src/Model/Profile.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Profile implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -28,7 +31,7 @@ class Profile implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -87,11 +90,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/ProfileMfa.php b/src/Model/ProfileMfa.php
index 94d0241b9..98dd373b8 100644
--- a/src/Model/ProfileMfa.php
+++ b/src/Model/ProfileMfa.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProfileMfa implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -32,7 +35,7 @@ class ProfileMfa implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): ?string
diff --git a/src/Model/ProofOfAddressKycDocument.php b/src/Model/ProofOfAddressKycDocument.php
index 4a8481dfd..b4f7c2275 100644
--- a/src/Model/ProofOfAddressKycDocument.php
+++ b/src/Model/ProofOfAddressKycDocument.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfAddressKycDocument implements KycDocument
{
+ use HasMetadata;
+
public const DOCUMENT_SUBTYPE_PASSPORT = 'passport';
public const DOCUMENT_SUBTYPE_ID_CARD = 'id-card';
@@ -91,7 +94,7 @@ class ProofOfAddressKycDocument implements KycDocument
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -165,11 +168,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDocumentType(): string
diff --git a/src/Model/ProofOfAddressKycDocumentDocumentMatches.php b/src/Model/ProofOfAddressKycDocumentDocumentMatches.php
index 27c0a52b7..9c03cb880 100644
--- a/src/Model/ProofOfAddressKycDocumentDocumentMatches.php
+++ b/src/Model/ProofOfAddressKycDocumentDocumentMatches.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfAddressKycDocumentDocumentMatches implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('score', $data)) {
$this->setScore($data['score']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getScore(): ?int
diff --git a/src/Model/ProofOfAddressKycDocumentEmbedded.php b/src/Model/ProofOfAddressKycDocumentEmbedded.php
index 35d6b153f..d6a688e5e 100644
--- a/src/Model/ProofOfAddressKycDocumentEmbedded.php
+++ b/src/Model/ProofOfAddressKycDocumentEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfAddressKycDocumentEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('files', $data)) {
$this->setFiles($data['files']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/ProofOfAddressKycDocumentParsedData.php b/src/Model/ProofOfAddressKycDocumentParsedData.php
index 5a40ae2ac..376a9c8b4 100644
--- a/src/Model/ProofOfAddressKycDocumentParsedData.php
+++ b/src/Model/ProofOfAddressKycDocumentParsedData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfAddressKycDocumentParsedData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('score', $data)) {
$this->setScore($data['score']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getScore(): ?int
diff --git a/src/Model/ProofOfCreditFileKycDocument.php b/src/Model/ProofOfCreditFileKycDocument.php
index c81f2221d..9e2fa8934 100644
--- a/src/Model/ProofOfCreditFileKycDocument.php
+++ b/src/Model/ProofOfCreditFileKycDocument.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfCreditFileKycDocument implements KycDocument
{
+ use HasMetadata;
+
public const DOCUMENT_SUBTYPE_PASSPORT = 'passport';
public const DOCUMENT_SUBTYPE_ID_CARD = 'id-card';
@@ -91,7 +94,7 @@ class ProofOfCreditFileKycDocument implements KycDocument
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -162,11 +165,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDocumentType(): string
diff --git a/src/Model/ProofOfCreditFileKycDocumentDocumentMatches.php b/src/Model/ProofOfCreditFileKycDocumentDocumentMatches.php
index 5742ef11e..4a5d65fcc 100644
--- a/src/Model/ProofOfCreditFileKycDocumentDocumentMatches.php
+++ b/src/Model/ProofOfCreditFileKycDocumentDocumentMatches.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfCreditFileKycDocumentDocumentMatches implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('checkList', $data)) {
$this->setCheckList($data['checkList']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getData(): ?CreditFileMatches
diff --git a/src/Model/ProofOfCreditFileKycDocumentEmbedded.php b/src/Model/ProofOfCreditFileKycDocumentEmbedded.php
index 160f706fd..1825f57e3 100644
--- a/src/Model/ProofOfCreditFileKycDocumentEmbedded.php
+++ b/src/Model/ProofOfCreditFileKycDocumentEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfCreditFileKycDocumentEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('files', $data)) {
$this->setFiles($data['files']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/ProofOfFundsKycDocument.php b/src/Model/ProofOfFundsKycDocument.php
index 057d27aff..3a8c29b59 100644
--- a/src/Model/ProofOfFundsKycDocument.php
+++ b/src/Model/ProofOfFundsKycDocument.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfFundsKycDocument implements KycDocument
{
+ use HasMetadata;
+
public const DOCUMENT_SUBTYPE_PASSPORT = 'passport';
public const DOCUMENT_SUBTYPE_ID_CARD = 'id-card';
@@ -91,7 +94,7 @@ class ProofOfFundsKycDocument implements KycDocument
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -165,11 +168,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDocumentType(): string
diff --git a/src/Model/ProofOfFundsKycDocumentDocumentMatches.php b/src/Model/ProofOfFundsKycDocumentDocumentMatches.php
index 2958c5f2f..b7c74bfff 100644
--- a/src/Model/ProofOfFundsKycDocumentDocumentMatches.php
+++ b/src/Model/ProofOfFundsKycDocumentDocumentMatches.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfFundsKycDocumentDocumentMatches implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getData(): ?FundsMatches
diff --git a/src/Model/ProofOfFundsKycDocumentEmbedded.php b/src/Model/ProofOfFundsKycDocumentEmbedded.php
index d024b5586..2ac30df5e 100644
--- a/src/Model/ProofOfFundsKycDocumentEmbedded.php
+++ b/src/Model/ProofOfFundsKycDocumentEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfFundsKycDocumentEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('files', $data)) {
$this->setFiles($data['files']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/ProofOfFundsKycDocumentParsedData.php b/src/Model/ProofOfFundsKycDocumentParsedData.php
index 242dbe6f4..7ee337b56 100644
--- a/src/Model/ProofOfFundsKycDocumentParsedData.php
+++ b/src/Model/ProofOfFundsKycDocumentParsedData.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfFundsKycDocumentParsedData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getData(): ?FundsMatches
diff --git a/src/Model/ProofOfIdentityKycDocument.php b/src/Model/ProofOfIdentityKycDocument.php
index feb2f4d0b..248d2baa8 100644
--- a/src/Model/ProofOfIdentityKycDocument.php
+++ b/src/Model/ProofOfIdentityKycDocument.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfIdentityKycDocument implements KycDocument
{
+ use HasMetadata;
+
public const DOCUMENT_SUBTYPE_PASSPORT = 'passport';
public const DOCUMENT_SUBTYPE_ID_CARD = 'id-card';
@@ -91,7 +94,7 @@ class ProofOfIdentityKycDocument implements KycDocument
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -165,11 +168,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDocumentType(): string
diff --git a/src/Model/ProofOfIdentityKycDocumentDocumentMatches.php b/src/Model/ProofOfIdentityKycDocumentDocumentMatches.php
index 2fd12f35f..83c1239c3 100644
--- a/src/Model/ProofOfIdentityKycDocumentDocumentMatches.php
+++ b/src/Model/ProofOfIdentityKycDocumentDocumentMatches.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfIdentityKycDocumentDocumentMatches implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('score', $data)) {
$this->setScore($data['score']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getScore(): ?int
diff --git a/src/Model/ProofOfIdentityKycDocumentEmbedded.php b/src/Model/ProofOfIdentityKycDocumentEmbedded.php
index 4208d82bb..2e471b51d 100644
--- a/src/Model/ProofOfIdentityKycDocumentEmbedded.php
+++ b/src/Model/ProofOfIdentityKycDocumentEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfIdentityKycDocumentEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('files', $data)) {
$this->setFiles($data['files']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/ProofOfIdentityKycDocumentParsedData.php b/src/Model/ProofOfIdentityKycDocumentParsedData.php
index 9c398d227..df60ffd10 100644
--- a/src/Model/ProofOfIdentityKycDocumentParsedData.php
+++ b/src/Model/ProofOfIdentityKycDocumentParsedData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfIdentityKycDocumentParsedData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('score', $data)) {
$this->setScore($data['score']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getScore(): ?int
diff --git a/src/Model/ProofOfPurchaseKycDocument.php b/src/Model/ProofOfPurchaseKycDocument.php
index 920716730..d2489d576 100644
--- a/src/Model/ProofOfPurchaseKycDocument.php
+++ b/src/Model/ProofOfPurchaseKycDocument.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfPurchaseKycDocument implements KycDocument
{
+ use HasMetadata;
+
public const DOCUMENT_SUBTYPE_PASSPORT = 'passport';
public const DOCUMENT_SUBTYPE_ID_CARD = 'id-card';
@@ -91,7 +94,7 @@ class ProofOfPurchaseKycDocument implements KycDocument
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -165,11 +168,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDocumentType(): string
diff --git a/src/Model/ProofOfPurchaseKycDocumentDocumentMatches.php b/src/Model/ProofOfPurchaseKycDocumentDocumentMatches.php
index b08449ebf..0433170ff 100644
--- a/src/Model/ProofOfPurchaseKycDocumentDocumentMatches.php
+++ b/src/Model/ProofOfPurchaseKycDocumentDocumentMatches.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfPurchaseKycDocumentDocumentMatches implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getData(): ?PurchaseMatches
diff --git a/src/Model/ProofOfPurchaseKycDocumentEmbedded.php b/src/Model/ProofOfPurchaseKycDocumentEmbedded.php
index 3df2d22fe..7f083d6f9 100644
--- a/src/Model/ProofOfPurchaseKycDocumentEmbedded.php
+++ b/src/Model/ProofOfPurchaseKycDocumentEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfPurchaseKycDocumentEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('files', $data)) {
$this->setFiles($data['files']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/ProofOfPurchaseKycDocumentParsedData.php b/src/Model/ProofOfPurchaseKycDocumentParsedData.php
index 4b5243f03..a69891092 100644
--- a/src/Model/ProofOfPurchaseKycDocumentParsedData.php
+++ b/src/Model/ProofOfPurchaseKycDocumentParsedData.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProofOfPurchaseKycDocumentParsedData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getData(): ?PurchaseMatches
diff --git a/src/Model/Prosa.php b/src/Model/Prosa.php
index 25577478f..7a6d5c239 100644
--- a/src/Model/Prosa.php
+++ b/src/Model/Prosa.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Prosa extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Prosa',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ProsaCredentials
diff --git a/src/Model/ProsaCredentials.php b/src/Model/ProsaCredentials.php
index 5dcd134a6..feab44bec 100644
--- a/src/Model/ProsaCredentials.php
+++ b/src/Model/ProsaCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ProsaCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('entityId', $data)) {
$this->setEntityId($data['entityId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('accessToken', $data)) {
$this->setAccessToken($data['accessToken']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEntityId(): string
diff --git a/src/Model/PurchaseMatches.php b/src/Model/PurchaseMatches.php
index cce62ae12..c09be1493 100644
--- a/src/Model/PurchaseMatches.php
+++ b/src/Model/PurchaseMatches.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class PurchaseMatches implements JsonSerializable
{
+ use HasMetadata;
+
public const DOCUMENT_SUBTYPE_PASSPORT = 'passport';
public const DOCUMENT_SUBTYPE_ID_CARD = 'id-card';
@@ -74,7 +77,7 @@ class PurchaseMatches implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('firstName', $data)) {
$this->setFirstName($data['firstName']);
@@ -88,11 +91,12 @@ public function __construct(array $data = [])
if (array_key_exists('documentSubtype', $data)) {
$this->setDocumentSubtype($data['documentSubtype']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFirstName(): ?string
diff --git a/src/Model/QuickBooksOnlineCustomerExternalServiceSettings.php b/src/Model/QuickBooksOnlineCustomerExternalServiceSettings.php
index 3cf28f5b5..8127dacdc 100644
--- a/src/Model/QuickBooksOnlineCustomerExternalServiceSettings.php
+++ b/src/Model/QuickBooksOnlineCustomerExternalServiceSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class QuickBooksOnlineCustomerExternalServiceSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const SYNC_MANUALLY = 'manually';
public const SYNC_WHEN_USED = 'when-used';
@@ -32,7 +35,7 @@ class QuickBooksOnlineCustomerExternalServiceSettings implements JsonSerializabl
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sync', $data)) {
$this->setSync($data['sync']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('displayName', $data)) {
$this->setDisplayName($data['displayName']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSync(): ?string
diff --git a/src/Model/QuickBooksOnlineExternalServiceSettings.php b/src/Model/QuickBooksOnlineExternalServiceSettings.php
index c3f0a52c2..ed2b51959 100644
--- a/src/Model/QuickBooksOnlineExternalServiceSettings.php
+++ b/src/Model/QuickBooksOnlineExternalServiceSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class QuickBooksOnlineExternalServiceSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('journalEntry', $data)) {
$this->setJournalEntry($data['journalEntry']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?QuickBooksOnlineCustomerExternalServiceSettings
diff --git a/src/Model/QuickBooksOnlineInvoiceExternalServiceSettings.php b/src/Model/QuickBooksOnlineInvoiceExternalServiceSettings.php
index f89a9dcb0..2ae439314 100644
--- a/src/Model/QuickBooksOnlineInvoiceExternalServiceSettings.php
+++ b/src/Model/QuickBooksOnlineInvoiceExternalServiceSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class QuickBooksOnlineInvoiceExternalServiceSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const SYNC_MANUALLY = 'manually';
public const SYNC_WHEN_ISSUED = 'when-issued';
@@ -26,7 +29,7 @@ class QuickBooksOnlineInvoiceExternalServiceSettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sync', $data)) {
$this->setSync($data['sync']);
@@ -70,11 +73,12 @@ public function __construct(array $data = [])
if (array_key_exists('taxLineDescription', $data)) {
$this->setTaxLineDescription($data['taxLineDescription']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSync(): ?string
diff --git a/src/Model/QuickBooksOnlineJournalEntryExternalServiceSettings.php b/src/Model/QuickBooksOnlineJournalEntryExternalServiceSettings.php
index f90bd010e..e5edd7ec6 100644
--- a/src/Model/QuickBooksOnlineJournalEntryExternalServiceSettings.php
+++ b/src/Model/QuickBooksOnlineJournalEntryExternalServiceSettings.php
@@ -15,25 +15,29 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class QuickBooksOnlineJournalEntryExternalServiceSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const SYNC_MANUALLY = 'manually';
public const SYNC_ALWAYS = 'always';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sync', $data)) {
$this->setSync($data['sync']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSync(): ?string
diff --git a/src/Model/QuickBooksOnlineTransactionExternalServiceSettings.php b/src/Model/QuickBooksOnlineTransactionExternalServiceSettings.php
index 867cdec61..23d43a1fc 100644
--- a/src/Model/QuickBooksOnlineTransactionExternalServiceSettings.php
+++ b/src/Model/QuickBooksOnlineTransactionExternalServiceSettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class QuickBooksOnlineTransactionExternalServiceSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const SYNC_PAYMENTS_MANUALLY = 'manually';
public const SYNC_PAYMENTS_ALWAYS = 'always';
@@ -28,7 +31,7 @@ class QuickBooksOnlineTransactionExternalServiceSettings implements JsonSerializ
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('syncPayments', $data)) {
$this->setSyncPayments($data['syncPayments']);
@@ -42,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('department', $data)) {
$this->setDepartment($data['department']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSyncPayments(): ?string
diff --git a/src/Model/QuoteFactory.php b/src/Model/QuoteFactory.php
index 1edeeb43e..690ad0acc 100644
--- a/src/Model/QuoteFactory.php
+++ b/src/Model/QuoteFactory.php
@@ -18,12 +18,12 @@
class QuoteFactory
{
- public static function from(array $data = []): Quote
+ public static function from(array $data = [], array $metadata = []): Quote
{
return match ($data['type']) {
- 'change' => ChangeQuote::from($data),
- 'creation' => CreationQuote::from($data),
- 'reactivation' => ReactivationQuote::from($data),
+ 'change' => ChangeQuote::from($data, $metadata),
+ 'creation' => CreationQuote::from($data, $metadata),
+ 'reactivation' => ReactivationQuote::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/QuoteItemFactory.php b/src/Model/QuoteItemFactory.php
index 20b64cce7..74a49039c 100644
--- a/src/Model/QuoteItemFactory.php
+++ b/src/Model/QuoteItemFactory.php
@@ -18,11 +18,11 @@
class QuoteItemFactory
{
- public static function from(array $data = []): QuoteItem
+ public static function from(array $data = [], array $metadata = []): QuoteItem
{
return match ($data['type']) {
- 'one-time-sale' => QuoteOneTimeSaleItem::from($data),
- 'subscription' => QuoteSubscriptionItem::from($data),
+ 'one-time-sale' => QuoteOneTimeSaleItem::from($data, $metadata),
+ 'subscription' => QuoteSubscriptionItem::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/QuoteOneTimeSaleItem.php b/src/Model/QuoteOneTimeSaleItem.php
index f94a92017..b715a08b0 100644
--- a/src/Model/QuoteOneTimeSaleItem.php
+++ b/src/Model/QuoteOneTimeSaleItem.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class QuoteOneTimeSaleItem implements QuoteItem
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -41,11 +44,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/QuoteSubscriptionItem.php b/src/Model/QuoteSubscriptionItem.php
index dc9cecdb4..0fde35dca 100644
--- a/src/Model/QuoteSubscriptionItem.php
+++ b/src/Model/QuoteSubscriptionItem.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class QuoteSubscriptionItem implements QuoteItem
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/QuoteTimeline.php b/src/Model/QuoteTimeline.php
index 325271f48..0088087c7 100644
--- a/src/Model/QuoteTimeline.php
+++ b/src/Model/QuoteTimeline.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class QuoteTimeline implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_CREATED = 'quote-created';
public const TYPE_ISSUED = 'quote-issued';
@@ -46,7 +49,7 @@ class QuoteTimeline implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -69,11 +72,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/RPN.php b/src/Model/RPN.php
index 530788799..d501d4650 100644
--- a/src/Model/RPN.php
+++ b/src/Model/RPN.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RPN extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'RPN',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): RPNCredentials
diff --git a/src/Model/RPNCredentials.php b/src/Model/RPNCredentials.php
index 79baf2353..cac0846ea 100644
--- a/src/Model/RPNCredentials.php
+++ b/src/Model/RPNCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RPNCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('mid', $data)) {
$this->setMid($data['mid']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('key', $data)) {
$this->setKey($data['key']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMid(): string
diff --git a/src/Model/Rapyd.php b/src/Model/Rapyd.php
index 32f3a2a11..14cec9cdd 100644
--- a/src/Model/Rapyd.php
+++ b/src/Model/Rapyd.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Rapyd extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Rapyd',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): RapydCredentials
diff --git a/src/Model/RapydCredentials.php b/src/Model/RapydCredentials.php
index 54601e185..237034883 100644
--- a/src/Model/RapydCredentials.php
+++ b/src/Model/RapydCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RapydCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accessKey', $data)) {
$this->setAccessKey($data['accessKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccessKey(): string
diff --git a/src/Model/RapydSettings.php b/src/Model/RapydSettings.php
index f871988eb..c5d1775a1 100644
--- a/src/Model/RapydSettings.php
+++ b/src/Model/RapydSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RapydSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('ipnUrl', $data)) {
$this->setIpnUrl($data['ipnUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIpnUrl(): ?string
diff --git a/src/Model/ReactivationQuote.php b/src/Model/ReactivationQuote.php
index e6a764bdd..2bedffeea 100644
--- a/src/Model/ReactivationQuote.php
+++ b/src/Model/ReactivationQuote.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReactivationQuote implements Quote
{
+ use HasMetadata;
+
public const ACCEPTANCE_CONDITIONS_CUSTOMER = 'customer';
public const ACCEPTANCE_CONDITIONS_PAYMENT = 'payment';
@@ -37,7 +40,7 @@ class ReactivationQuote implements Quote
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -108,11 +111,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/ReactivationQuoteAcceptanceFulfillment.php b/src/Model/ReactivationQuoteAcceptanceFulfillment.php
index 68ea34cd4..cd1a01c45 100644
--- a/src/Model/ReactivationQuoteAcceptanceFulfillment.php
+++ b/src/Model/ReactivationQuoteAcceptanceFulfillment.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReactivationQuoteAcceptanceFulfillment implements JsonSerializable
{
+ use HasMetadata;
+
public const CONDITION_CUSTOMER = 'customer';
public const CONDITION_PAYMENT = 'payment';
@@ -26,7 +29,7 @@ class ReactivationQuoteAcceptanceFulfillment implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('condition', $data)) {
$this->setCondition($data['condition']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('isFulfilled', $data)) {
$this->setIsFulfilled($data['isFulfilled']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCondition(): ?string
diff --git a/src/Model/ReactivationQuoteEmbedded.php b/src/Model/ReactivationQuoteEmbedded.php
index c570dc3ea..5d51926c1 100644
--- a/src/Model/ReactivationQuoteEmbedded.php
+++ b/src/Model/ReactivationQuoteEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReactivationQuoteEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('invoice', $data)) {
$this->setInvoice($data['invoice']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/ReactivationQuoteInvoicePreview.php b/src/Model/ReactivationQuoteInvoicePreview.php
index 71d0af28d..f4127f496 100644
--- a/src/Model/ReactivationQuoteInvoicePreview.php
+++ b/src/Model/ReactivationQuoteInvoicePreview.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReactivationQuoteInvoicePreview implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('items', $data)) {
$this->setItems($data['items']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCurrency(): ?string
diff --git a/src/Model/ReactivationQuoteInvoicePreviewInitialAmounts.php b/src/Model/ReactivationQuoteInvoicePreviewInitialAmounts.php
index cccc7b9c5..fd43c3dd4 100644
--- a/src/Model/ReactivationQuoteInvoicePreviewInitialAmounts.php
+++ b/src/Model/ReactivationQuoteInvoicePreviewInitialAmounts.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReactivationQuoteInvoicePreviewInitialAmounts implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('taxAmount', $data)) {
$this->setTaxAmount($data['taxAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/ReactivationQuoteInvoicePreviewItems.php b/src/Model/ReactivationQuoteInvoicePreviewItems.php
index fc8d94b55..4d8b8d583 100644
--- a/src/Model/ReactivationQuoteInvoicePreviewItems.php
+++ b/src/Model/ReactivationQuoteInvoicePreviewItems.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReactivationQuoteInvoicePreviewItems implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_DEBIT = 'debit';
public const TYPE_CREDIT = 'credit';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quoteItemId', $data)) {
$this->setQuoteItemId($data['quoteItemId']);
@@ -68,11 +71,12 @@ public function __construct(array $data = [])
if (array_key_exists('trialTaxAmount', $data)) {
$this->setTrialTaxAmount($data['trialTaxAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getQuoteItemId(): ?string
diff --git a/src/Model/ReactivationQuoteInvoicePreviewRecurringAmounts.php b/src/Model/ReactivationQuoteInvoicePreviewRecurringAmounts.php
index 223e6ef38..6963be403 100644
--- a/src/Model/ReactivationQuoteInvoicePreviewRecurringAmounts.php
+++ b/src/Model/ReactivationQuoteInvoicePreviewRecurringAmounts.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReactivationQuoteInvoicePreviewRecurringAmounts implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('taxAmount', $data)) {
$this->setTaxAmount($data['taxAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/ReactivationQuoteOrder.php b/src/Model/ReactivationQuoteOrder.php
index 0acb73723..fff2eb4ba 100644
--- a/src/Model/ReactivationQuoteOrder.php
+++ b/src/Model/ReactivationQuoteOrder.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReactivationQuoteOrder implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -45,11 +48,12 @@ public function __construct(array $data = [])
if (array_key_exists('shipping', $data)) {
$this->setShipping($data['shipping']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): string
diff --git a/src/Model/ReactivationQuoteSignature.php b/src/Model/ReactivationQuoteSignature.php
index 60f2f92c2..632cb4754 100644
--- a/src/Model/ReactivationQuoteSignature.php
+++ b/src/Model/ReactivationQuoteSignature.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReactivationQuoteSignature implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('showWrittenSignatureLines', $data)) {
$this->setShowWrittenSignatureLines($data['showWrittenSignatureLines']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('organizationPrintedName', $data)) {
$this->setOrganizationPrintedName($data['organizationPrintedName']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getShowWrittenSignatureLines(): ?bool
diff --git a/src/Model/ReadyToPayAchMethod.php b/src/Model/ReadyToPayAchMethod.php
index eb2195a6c..256cf71b3 100644
--- a/src/Model/ReadyToPayAchMethod.php
+++ b/src/Model/ReadyToPayAchMethod.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ReadyToPayAchMethod implements ReadyToPayMethods
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('feature', $data)) {
$this->setFeature($data['feature']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('filters', $data)) {
$this->setFilters($data['filters']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/ReadyToPayAchMethodFeatureFactory.php b/src/Model/ReadyToPayAchMethodFeatureFactory.php
index b2b773b86..0a5131aaa 100644
--- a/src/Model/ReadyToPayAchMethodFeatureFactory.php
+++ b/src/Model/ReadyToPayAchMethodFeatureFactory.php
@@ -18,10 +18,10 @@
class ReadyToPayAchMethodFeatureFactory
{
- public static function from(array $data = []): ReadyToPayAchMethodFeature
+ public static function from(array $data = [], array $metadata = []): ReadyToPayAchMethodFeature
{
return match ($data['name']) {
- 'Plaid' => AchPlaidFeature::from($data),
+ 'Plaid' => AchPlaidFeature::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/ReadyToPayAmount.php b/src/Model/ReadyToPayAmount.php
index 04eaec597..ca9ea7ee4 100644
--- a/src/Model/ReadyToPayAmount.php
+++ b/src/Model/ReadyToPayAmount.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ReadyToPayAmount implements PostReadyToPay
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('websiteId', $data)) {
$this->setWebsiteId($data['websiteId']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('riskMetadata', $data)) {
$this->setRiskMetadata($data['riskMetadata']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getWebsiteId(): string
diff --git a/src/Model/ReadyToPayGenericMethod.php b/src/Model/ReadyToPayGenericMethod.php
index 7ab70d0db..225576b88 100644
--- a/src/Model/ReadyToPayGenericMethod.php
+++ b/src/Model/ReadyToPayGenericMethod.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ReadyToPayGenericMethod implements ReadyToPayMethods
{
+ use HasMetadata;
+
public const METHOD_CASH = 'cash';
public const METHOD_CHECK = 'check';
@@ -88,8 +92,6 @@ class ReadyToPayGenericMethod implements ReadyToPayMethods
public const METHOD_CUPON_DE_PAGOS = 'Cupon-de-pagos';
- public const METHOD_CRYPTOCURRENCY = 'cryptocurrency';
-
public const METHOD_DOMESTIC_CARDS = 'domestic-cards';
public const METHOD_DIRECTA24_CARD = 'Directa24Card';
@@ -296,6 +298,8 @@ class ReadyToPayGenericMethod implements ReadyToPayMethods
public const METHOD_VENUS_POINT = 'VenusPoint';
+ public const METHOD_VIVA = 'Viva';
+
public const METHOD_VOUCHER = 'voucher';
public const METHOD_VOUCHER2 = 'voucher-2';
@@ -332,7 +336,7 @@ class ReadyToPayGenericMethod implements ReadyToPayMethods
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
@@ -340,11 +344,12 @@ public function __construct(array $data = [])
if (array_key_exists('filters', $data)) {
$this->setFilters($data['filters']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/ReadyToPayItems.php b/src/Model/ReadyToPayItems.php
index c64cc120f..210ea489a 100644
--- a/src/Model/ReadyToPayItems.php
+++ b/src/Model/ReadyToPayItems.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ReadyToPayItems implements PostReadyToPay
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('websiteId', $data)) {
$this->setWebsiteId($data['websiteId']);
@@ -32,11 +36,12 @@ public function __construct(array $data = [])
if (array_key_exists('riskMetadata', $data)) {
$this->setRiskMetadata($data['riskMetadata']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getWebsiteId(): string
diff --git a/src/Model/ReadyToPayItemsItems.php b/src/Model/ReadyToPayItemsItems.php
index 630c8da91..0220fa218 100644
--- a/src/Model/ReadyToPayItemsItems.php
+++ b/src/Model/ReadyToPayItemsItems.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReadyToPayItemsItems implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('planId', $data)) {
$this->setPlanId($data['planId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPlanId(): string
diff --git a/src/Model/ReadyToPayKlarnaMethod.php b/src/Model/ReadyToPayKlarnaMethod.php
index a66fabec9..2ec4c9bcc 100644
--- a/src/Model/ReadyToPayKlarnaMethod.php
+++ b/src/Model/ReadyToPayKlarnaMethod.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ReadyToPayKlarnaMethod implements ReadyToPayMethods
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('feature', $data)) {
$this->setFeature($data['feature']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('filters', $data)) {
$this->setFilters($data['filters']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/ReadyToPayKlarnaMethodFeatureFactory.php b/src/Model/ReadyToPayKlarnaMethodFeatureFactory.php
index bb772bdb8..3df8626eb 100644
--- a/src/Model/ReadyToPayKlarnaMethodFeatureFactory.php
+++ b/src/Model/ReadyToPayKlarnaMethodFeatureFactory.php
@@ -18,10 +18,10 @@
class ReadyToPayKlarnaMethodFeatureFactory
{
- public static function from(array $data = []): ReadyToPayKlarnaMethodFeature
+ public static function from(array $data = [], array $metadata = []): ReadyToPayKlarnaMethodFeature
{
return match ($data['name']) {
- 'Klarna' => KlarnaFeature::from($data),
+ 'Klarna' => KlarnaFeature::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/ReadyToPayMethodsFactory.php b/src/Model/ReadyToPayMethodsFactory.php
index c59ddd59f..86dac5c01 100644
--- a/src/Model/ReadyToPayMethodsFactory.php
+++ b/src/Model/ReadyToPayMethodsFactory.php
@@ -18,154 +18,154 @@
class ReadyToPayMethodsFactory
{
- public static function from(array $data = []): ReadyToPayMethods
+ public static function from(array $data = [], array $metadata = []): ReadyToPayMethods
{
return match ($data['method']) {
- 'ach' => ReadyToPayAchMethod::from($data),
- 'AdvCash' => ReadyToPayGenericMethod::from($data),
- 'Alfa-click' => ReadyToPayGenericMethod::from($data),
- 'Alipay' => ReadyToPayGenericMethod::from($data),
- 'AstroPay Card' => ReadyToPayGenericMethod::from($data),
- 'AstroPay-GO' => ReadyToPayGenericMethod::from($data),
- 'Baloto' => ReadyToPayGenericMethod::from($data),
- 'Bancontact' => ReadyToPayGenericMethod::from($data),
- 'Bancontact-mobile' => ReadyToPayGenericMethod::from($data),
- 'BankReferenced' => ReadyToPayGenericMethod::from($data),
- 'Beeline' => ReadyToPayGenericMethod::from($data),
- 'Belfius-direct-net' => ReadyToPayGenericMethod::from($data),
- 'Bizum' => ReadyToPayGenericMethod::from($data),
- 'Boleto' => ReadyToPayGenericMethod::from($data),
- 'CASHlib' => ReadyToPayGenericMethod::from($data),
- 'CODVoucher' => ReadyToPayGenericMethod::from($data),
- 'CashToCode' => ReadyToPayGenericMethod::from($data),
- 'China UnionPay' => ReadyToPayGenericMethod::from($data),
- 'Cleo' => ReadyToPayGenericMethod::from($data),
- 'Conekta-oxxo' => ReadyToPayGenericMethod::from($data),
- 'Cupon-de-pagos' => ReadyToPayGenericMethod::from($data),
- 'EPS' => ReadyToPayGenericMethod::from($data),
- 'Efecty' => ReadyToPayGenericMethod::from($data),
- 'FasterPay' => ReadyToPayGenericMethod::from($data),
- 'Flexepin' => ReadyToPayGenericMethod::from($data),
- 'Giropay' => ReadyToPayGenericMethod::from($data),
- 'Google Pay' => ReadyToPayGenericMethod::from($data),
- 'Gpaysafe' => ReadyToPayGenericMethod::from($data),
- 'ING-homepay' => ReadyToPayGenericMethod::from($data),
- 'INOVAPAY-pin' => ReadyToPayGenericMethod::from($data),
- 'INOVAPAY-wallet' => ReadyToPayGenericMethod::from($data),
- 'InstaDebit' => ReadyToPayGenericMethod::from($data),
- 'InstantPayments' => ReadyToPayGenericMethod::from($data),
- 'Interac' => ReadyToPayGenericMethod::from($data),
- 'Interac-eTransfer' => ReadyToPayGenericMethod::from($data),
- 'Interac-online' => ReadyToPayGenericMethod::from($data),
- 'Jeton' => ReadyToPayGenericMethod::from($data),
- 'KNOT' => ReadyToPayGenericMethod::from($data),
- 'Khelocard' => ReadyToPayGenericMethod::from($data),
- 'MTS' => ReadyToPayGenericMethod::from($data),
- 'Matrix' => ReadyToPayGenericMethod::from($data),
- 'MaxiCash' => ReadyToPayGenericMethod::from($data),
- 'Megafon' => ReadyToPayGenericMethod::from($data),
- 'MiFinity-eWallet' => ReadyToPayGenericMethod::from($data),
- 'MuchBetter' => ReadyToPayGenericMethod::from($data),
- 'Multibanco' => ReadyToPayGenericMethod::from($data),
- 'Neosurf' => ReadyToPayGenericMethod::from($data),
- 'Netbanking' => ReadyToPayGenericMethod::from($data),
- 'Neteller' => ReadyToPayGenericMethod::from($data),
- 'Nordea-Solo' => ReadyToPayGenericMethod::from($data),
- 'OXXO' => ReadyToPayGenericMethod::from($data),
- 'OchaPay' => ReadyToPayGenericMethod::from($data),
- 'Onlineueberweisen' => ReadyToPayGenericMethod::from($data),
- 'P24' => ReadyToPayGenericMethod::from($data),
- 'POLi' => ReadyToPayGenericMethod::from($data),
- 'Pagadito' => ReadyToPayGenericMethod::from($data),
- 'PagoEffectivo' => ReadyToPayGenericMethod::from($data),
- 'Pagsmile-deposit-express' => ReadyToPayGenericMethod::from($data),
- 'Pagsmile-lottery' => ReadyToPayGenericMethod::from($data),
- 'Pay4Fun' => ReadyToPayGenericMethod::from($data),
- 'PayCash' => ReadyToPayGenericMethod::from($data),
- 'PayTabs' => ReadyToPayGenericMethod::from($data),
- 'Payeer' => ReadyToPayGenericMethod::from($data),
- 'PaymentAsia-crypto' => ReadyToPayGenericMethod::from($data),
- 'Paymero' => ReadyToPayGenericMethod::from($data),
- 'Paynote' => ReadyToPayGenericMethod::from($data),
- 'Paysafecard' => ReadyToPayGenericMethod::from($data),
- 'Paysafecash' => ReadyToPayGenericMethod::from($data),
- 'Perfect-money' => ReadyToPayGenericMethod::from($data),
- 'PhonePe' => ReadyToPayGenericMethod::from($data),
- 'Piastrix' => ReadyToPayGenericMethod::from($data),
- 'PinPay' => ReadyToPayGenericMethod::from($data),
- 'PostFinance-card' => ReadyToPayGenericMethod::from($data),
- 'PostFinance-e-finance' => ReadyToPayGenericMethod::from($data),
- 'QIWI' => ReadyToPayGenericMethod::from($data),
- 'QPay' => ReadyToPayGenericMethod::from($data),
- 'QQPay' => ReadyToPayGenericMethod::from($data),
- 'Resurs' => ReadyToPayGenericMethod::from($data),
- 'SEPA' => ReadyToPayGenericMethod::from($data),
- 'SMSVoucher' => ReadyToPayGenericMethod::from($data),
- 'SafetyPay' => ReadyToPayGenericMethod::from($data),
- 'Skrill' => ReadyToPayGenericMethod::from($data),
- 'Skrill Rapid Transfer' => ReadyToPayGenericMethod::from($data),
- 'Sofort' => ReadyToPayGenericMethod::from($data),
- 'SparkPay' => ReadyToPayGenericMethod::from($data),
- 'Tele2' => ReadyToPayGenericMethod::from($data),
- 'Terminaly-RF' => ReadyToPayGenericMethod::from($data),
- 'ToditoCash-card' => ReadyToPayGenericMethod::from($data),
- 'Trustly' => ReadyToPayGenericMethod::from($data),
- 'UPI' => ReadyToPayGenericMethod::from($data),
- 'UPayCard' => ReadyToPayGenericMethod::from($data),
- 'USD-coin' => ReadyToPayGenericMethod::from($data),
- 'VCreditos' => ReadyToPayGenericMethod::from($data),
- 'VenusPoint' => ReadyToPayGenericMethod::from($data),
- 'WeChat Pay' => ReadyToPayGenericMethod::from($data),
- 'Webmoney' => ReadyToPayGenericMethod::from($data),
- 'Webpay' => ReadyToPayGenericMethod::from($data),
- 'Webpay Card' => ReadyToPayGenericMethod::from($data),
- 'Webpay-2' => ReadyToPayGenericMethod::from($data),
- 'XPay-P2P' => ReadyToPayGenericMethod::from($data),
- 'XPay-QR' => ReadyToPayGenericMethod::from($data),
- 'Yandex-money' => ReadyToPayGenericMethod::from($data),
- 'Zimpler' => ReadyToPayGenericMethod::from($data),
- 'Zotapay' => ReadyToPayGenericMethod::from($data),
- 'bank-transfer' => ReadyToPayGenericMethod::from($data),
- 'bank-transfer-2' => ReadyToPayGenericMethod::from($data),
- 'bank-transfer-3' => ReadyToPayGenericMethod::from($data),
- 'bank-transfer-4' => ReadyToPayGenericMethod::from($data),
- 'bank-transfer-5' => ReadyToPayGenericMethod::from($data),
- 'bank-transfer-6' => ReadyToPayGenericMethod::from($data),
- 'bank-transfer-7' => ReadyToPayGenericMethod::from($data),
- 'bank-transfer-8' => ReadyToPayGenericMethod::from($data),
- 'bank-transfer-9' => ReadyToPayGenericMethod::from($data),
- 'bitcoin' => ReadyToPayGenericMethod::from($data),
- 'cash' => ReadyToPayGenericMethod::from($data),
- 'cash-deposit' => ReadyToPayGenericMethod::from($data),
- 'check' => ReadyToPayGenericMethod::from($data),
- 'cryptocurrency' => ReadyToPayGenericMethod::from($data),
- 'domestic-cards' => ReadyToPayGenericMethod::from($data),
- 'ePay.bg' => ReadyToPayGenericMethod::from($data),
- 'eZeeWallet' => ReadyToPayGenericMethod::from($data),
- 'echeck' => ReadyToPayGenericMethod::from($data),
- 'ecoPayz' => ReadyToPayGenericMethod::from($data),
- 'ecoVoucher' => ReadyToPayGenericMethod::from($data),
- 'iDEAL' => ReadyToPayGenericMethod::from($data),
- 'iDebit' => ReadyToPayGenericMethod::from($data),
- 'iWallet' => ReadyToPayGenericMethod::from($data),
- 'instant-bank-transfer' => ReadyToPayGenericMethod::from($data),
- 'invoice' => ReadyToPayGenericMethod::from($data),
- 'jpay' => ReadyToPayGenericMethod::from($data),
- 'loonie' => ReadyToPayGenericMethod::from($data),
- 'miscellaneous' => ReadyToPayGenericMethod::from($data),
- 'online-bank-transfer' => ReadyToPayGenericMethod::from($data),
- 'oriental-wallet' => ReadyToPayGenericMethod::from($data),
- 'phone' => ReadyToPayGenericMethod::from($data),
- 'plaid-account' => ReadyToPayGenericMethod::from($data),
- 'rapyd-checkout' => ReadyToPayGenericMethod::from($data),
- 'swift-dbt' => ReadyToPayGenericMethod::from($data),
- 'voucher' => ReadyToPayGenericMethod::from($data),
- 'voucher-2' => ReadyToPayGenericMethod::from($data),
- 'voucher-3' => ReadyToPayGenericMethod::from($data),
- 'voucher-4' => ReadyToPayGenericMethod::from($data),
- 'Klarna' => ReadyToPayKlarnaMethod::from($data),
- 'payment-card' => ReadyToPayPaymentCardMethod::from($data),
- 'paypal' => ReadyToPayPayPalMethod::from($data),
+ 'ach' => ReadyToPayAchMethod::from($data, $metadata),
+ 'AdvCash' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Alfa-click' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Alipay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'AstroPay Card' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'AstroPay-GO' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Baloto' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Bancontact' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Bancontact-mobile' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'BankReferenced' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Beeline' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Belfius-direct-net' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Bizum' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Boleto' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'CASHlib' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'CODVoucher' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'CashToCode' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'China UnionPay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Cleo' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Conekta-oxxo' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Cupon-de-pagos' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'EPS' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Efecty' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'FasterPay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Flexepin' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Giropay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Google Pay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Gpaysafe' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'ING-homepay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'INOVAPAY-pin' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'INOVAPAY-wallet' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'InstaDebit' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'InstantPayments' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Interac' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Interac-eTransfer' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Interac-online' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Jeton' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'KNOT' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Khelocard' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'MTS' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Matrix' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'MaxiCash' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Megafon' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'MiFinity-eWallet' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'MuchBetter' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Multibanco' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Neosurf' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Netbanking' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Neteller' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Nordea-Solo' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'OXXO' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'OchaPay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Onlineueberweisen' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'P24' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'POLi' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Pagadito' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'PagoEffectivo' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Pagsmile-deposit-express' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Pagsmile-lottery' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Pay4Fun' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'PayCash' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'PayTabs' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Payeer' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'PaymentAsia-crypto' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Paymero' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Paynote' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Paysafecard' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Paysafecash' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Perfect-money' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'PhonePe' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Piastrix' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'PinPay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'PostFinance-card' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'PostFinance-e-finance' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'QIWI' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'QPay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'QQPay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Resurs' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'SEPA' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'SMSVoucher' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'SafetyPay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Skrill' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Skrill Rapid Transfer' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Sofort' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'SparkPay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Tele2' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Terminaly-RF' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'ToditoCash-card' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Trustly' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'UPI' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'UPayCard' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'USD-coin' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'VCreditos' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'VenusPoint' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'WeChat Pay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Webmoney' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Webpay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Webpay Card' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Webpay-2' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'XPay-P2P' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'XPay-QR' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Yandex-money' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Zimpler' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Zotapay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bank-transfer' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bank-transfer-2' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bank-transfer-3' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bank-transfer-4' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bank-transfer-5' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bank-transfer-6' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bank-transfer-7' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bank-transfer-8' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bank-transfer-9' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'bitcoin' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'cash' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'cash-deposit' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'check' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'cryptocurrency' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'domestic-cards' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'ePay.bg' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'eZeeWallet' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'echeck' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'ecoPayz' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'ecoVoucher' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'iDEAL' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'iDebit' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'iWallet' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'instant-bank-transfer' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'invoice' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'jpay' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'loonie' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'miscellaneous' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'online-bank-transfer' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'oriental-wallet' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'phone' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'plaid-account' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'rapyd-checkout' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'swift-dbt' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'voucher' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'voucher-2' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'voucher-3' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'voucher-4' => ReadyToPayGenericMethod::from($data, $metadata),
+ 'Klarna' => ReadyToPayKlarnaMethod::from($data, $metadata),
+ 'payment-card' => ReadyToPayPaymentCardMethod::from($data, $metadata),
+ 'paypal' => ReadyToPayPayPalMethod::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/ReadyToPayPayPalMethod.php b/src/Model/ReadyToPayPayPalMethod.php
index 9a902902c..73b2d9c32 100644
--- a/src/Model/ReadyToPayPayPalMethod.php
+++ b/src/Model/ReadyToPayPayPalMethod.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ReadyToPayPayPalMethod implements ReadyToPayMethods
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('feature', $data)) {
$this->setFeature($data['feature']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('filters', $data)) {
$this->setFilters($data['filters']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/ReadyToPayPayPalMethodFeatureFactory.php b/src/Model/ReadyToPayPayPalMethodFeatureFactory.php
index eade0dbb2..7d7636600 100644
--- a/src/Model/ReadyToPayPayPalMethodFeatureFactory.php
+++ b/src/Model/ReadyToPayPayPalMethodFeatureFactory.php
@@ -18,10 +18,10 @@
class ReadyToPayPayPalMethodFeatureFactory
{
- public static function from(array $data = []): ReadyToPayPayPalMethodFeature
+ public static function from(array $data = [], array $metadata = []): ReadyToPayPayPalMethodFeature
{
return match ($data['name']) {
- 'PayPal billing agreement' => PayPalBillingAgreementFeature::from($data),
+ 'PayPal billing agreement' => PayPalBillingAgreementFeature::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/ReadyToPayPaymentCardMethod.php b/src/Model/ReadyToPayPaymentCardMethod.php
index 64f496532..f7af90c05 100644
--- a/src/Model/ReadyToPayPaymentCardMethod.php
+++ b/src/Model/ReadyToPayPaymentCardMethod.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ReadyToPayPaymentCardMethod implements ReadyToPayMethods
{
+ use HasMetadata;
+
public const BRANDS_VISA = 'Visa';
public const BRANDS_MASTER_CARD = 'MasterCard';
@@ -46,7 +50,7 @@ class ReadyToPayPaymentCardMethod implements ReadyToPayMethods
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('feature', $data)) {
$this->setFeature($data['feature']);
@@ -57,11 +61,12 @@ public function __construct(array $data = [])
if (array_key_exists('filters', $data)) {
$this->setFilters($data['filters']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/Realex.php b/src/Model/Realex.php
index aa7172fd6..b5d11ccbe 100644
--- a/src/Model/Realex.php
+++ b/src/Model/Realex.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Realex extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Realex',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): RealexCredentials
diff --git a/src/Model/RealexCredentials.php b/src/Model/RealexCredentials.php
index cbc4ff529..53f01d1ee 100644
--- a/src/Model/RealexCredentials.php
+++ b/src/Model/RealexCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RealexCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('account', $data)) {
$this->setAccount($data['account']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Realtime.php b/src/Model/Realtime.php
index 3c0256540..b7faf06d0 100644
--- a/src/Model/Realtime.php
+++ b/src/Model/Realtime.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Realtime extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Realtime',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): RealtimeCredentials
diff --git a/src/Model/RealtimeCredentials.php b/src/Model/RealtimeCredentials.php
index 6f3708c72..99af8813f 100644
--- a/src/Model/RealtimeCredentials.php
+++ b/src/Model/RealtimeCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RealtimeCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretWord', $data)) {
$this->setSecretWord($data['secretWord']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/RebillyAvalaraTax.php b/src/Model/RebillyAvalaraTax.php
index 920b9e37e..e36112502 100644
--- a/src/Model/RebillyAvalaraTax.php
+++ b/src/Model/RebillyAvalaraTax.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RebillyAvalaraTax implements Taxes
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('items', $data)) {
$this->setItems($data['items']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCalculator(): string
diff --git a/src/Model/RebillyShipping.php b/src/Model/RebillyShipping.php
index c27f5500b..69adc1e73 100644
--- a/src/Model/RebillyShipping.php
+++ b/src/Model/RebillyShipping.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RebillyShipping implements Shipping
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('rateId', $data)) {
$this->setRateId($data['rateId']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCalculator(): string
diff --git a/src/Model/RebillyTaxJarTax.php b/src/Model/RebillyTaxJarTax.php
index f25089b36..7876b00b7 100644
--- a/src/Model/RebillyTaxJarTax.php
+++ b/src/Model/RebillyTaxJarTax.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RebillyTaxJarTax implements Taxes
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('items', $data)) {
$this->setItems($data['items']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCalculator(): string
diff --git a/src/Model/RecurringOrder.php b/src/Model/RecurringOrder.php
index df85955e4..c89855b81 100644
--- a/src/Model/RecurringOrder.php
+++ b/src/Model/RecurringOrder.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class RecurringOrder implements Order
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_ACTIVE = 'active';
@@ -73,7 +76,7 @@ class RecurringOrder implements Order
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -198,6 +201,9 @@ public function __construct(array $data = [])
if (array_key_exists('renewalTime', $data)) {
$this->setRenewalTime($data['renewalTime']);
}
+ if (array_key_exists('isNew', $data)) {
+ $this->setIsNew($data['isNew']);
+ }
if (array_key_exists('createdTime', $data)) {
$this->setCreatedTime($data['createdTime']);
}
@@ -210,11 +216,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
@@ -612,6 +619,11 @@ public function getRenewalTime(): ?DateTimeImmutable
return $this->fields['renewalTime'] ?? null;
}
+ public function getIsNew(): ?bool
+ {
+ return $this->fields['isNew'] ?? null;
+ }
+
public function getCreatedTime(): ?DateTimeImmutable
{
return $this->fields['createdTime'] ?? null;
@@ -777,6 +789,9 @@ public function jsonSerialize(): array
if (array_key_exists('renewalTime', $this->fields)) {
$data['renewalTime'] = $this->fields['renewalTime']?->format(DateTimeInterface::RFC3339);
}
+ if (array_key_exists('isNew', $this->fields)) {
+ $data['isNew'] = $this->fields['isNew'];
+ }
if (array_key_exists('createdTime', $this->fields)) {
$data['createdTime'] = $this->fields['createdTime']?->format(DateTimeInterface::RFC3339);
}
@@ -977,6 +992,13 @@ private function setRenewalTime(null|DateTimeImmutable|string $renewalTime): sta
return $this;
}
+ private function setIsNew(null|bool $isNew): static
+ {
+ $this->fields['isNew'] = $isNew;
+
+ return $this;
+ }
+
private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
{
if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
diff --git a/src/Model/RecurringOrderEmbedded.php b/src/Model/RecurringOrderEmbedded.php
index 7bdece261..3dda056a4 100644
--- a/src/Model/RecurringOrderEmbedded.php
+++ b/src/Model/RecurringOrderEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RecurringOrderEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('website', $data)) {
$this->setWebsite($data['website']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/RecurringOrderItems.php b/src/Model/RecurringOrderItems.php
index 7b71b4db0..bb1e0a8bf 100644
--- a/src/Model/RecurringOrderItems.php
+++ b/src/Model/RecurringOrderItems.php
@@ -37,6 +37,8 @@ public function getQuantity(): ?int;
public function setQuantity(null|int $quantity): static;
+ public function getRevision(): ?int;
+
public function getCreatedTime(): ?DateTimeImmutable;
public function getUpdatedTime(): ?DateTimeImmutable;
diff --git a/src/Model/RecurringOrderItemsFactory.php b/src/Model/RecurringOrderItemsFactory.php
index 7c6ebd5a0..5a1ea9aef 100644
--- a/src/Model/RecurringOrderItemsFactory.php
+++ b/src/Model/RecurringOrderItemsFactory.php
@@ -18,11 +18,11 @@
class RecurringOrderItemsFactory
{
- public static function from(array $data = []): RecurringOrderItems
+ public static function from(array $data = [], array $metadata = []): RecurringOrderItems
{
return match ($data['type']) {
- 'one-time-sale' => OneTimeSaleItem::from($data),
- 'subscription' => SubscriptionItem::from($data),
+ 'one-time-sale' => OneTimeSaleItem::from($data, $metadata),
+ 'subscription' => SubscriptionItem::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/RecurringOrderTrial.php b/src/Model/RecurringOrderTrial.php
index 8bc1d4e70..7043fdf4a 100644
--- a/src/Model/RecurringOrderTrial.php
+++ b/src/Model/RecurringOrderTrial.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RecurringOrderTrial implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('enabled', $data)) {
$this->setEnabled($data['enabled']);
@@ -30,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('endTime', $data)) {
$this->setEndTime($data['endTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEnabled(): ?bool
diff --git a/src/Model/RedemptionCancelTimelineAction.php b/src/Model/RedemptionCancelTimelineAction.php
index 42d44b34e..dbf028d44 100644
--- a/src/Model/RedemptionCancelTimelineAction.php
+++ b/src/Model/RedemptionCancelTimelineAction.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RedemptionCancelTimelineAction implements TimelineAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('redemptionId', $data)) {
$this->setRedemptionId($data['redemptionId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAction(): string
diff --git a/src/Model/RedemptionRestrictionFactory.php b/src/Model/RedemptionRestrictionFactory.php
index 94a9be511..1e2a022a4 100644
--- a/src/Model/RedemptionRestrictionFactory.php
+++ b/src/Model/RedemptionRestrictionFactory.php
@@ -18,16 +18,17 @@
class RedemptionRestrictionFactory
{
- public static function from(array $data = []): RedemptionRestriction
+ public static function from(array $data = [], array $metadata = []): RedemptionRestriction
{
return match ($data['type']) {
- 'discounts-per-redemption' => CouponRestrictionDiscountPerRedemption::from($data),
- 'minimum-order-amount' => CouponRestrictionMinimumOrderAmount::from($data),
- 'paid-by-time' => CouponRestrictionPaidByTime::from($data),
- 'restrict-to-invoices' => CouponRestrictionRestrictToInvoices::from($data),
- 'restrict-to-plans' => CouponRestrictionRestrictToPlans::from($data),
- 'restrict-to-products' => CouponRestrictionRestrictToProducts::from($data),
- 'restrict-to-subscriptions' => CouponRestrictionRestrictToSubscriptions::from($data),
+ 'discounts-per-redemption' => CouponRestrictionDiscountPerRedemption::from($data, $metadata),
+ 'maximum-order-amount' => CouponRestrictionMaximumOrderAmount::from($data, $metadata),
+ 'minimum-order-amount' => CouponRestrictionMinimumOrderAmount::from($data, $metadata),
+ 'paid-by-time' => CouponRestrictionPaidByTime::from($data, $metadata),
+ 'restrict-to-invoices' => CouponRestrictionRestrictToInvoices::from($data, $metadata),
+ 'restrict-to-plans' => CouponRestrictionRestrictToPlans::from($data, $metadata),
+ 'restrict-to-products' => CouponRestrictionRestrictToProducts::from($data, $metadata),
+ 'restrict-to-subscriptions' => CouponRestrictionRestrictToSubscriptions::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/Redsys.php b/src/Model/Redsys.php
index 8ef3da46a..f759e0a27 100644
--- a/src/Model/Redsys.php
+++ b/src/Model/Redsys.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Redsys extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Redsys',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): RedsysCredentials
diff --git a/src/Model/RedsysCredentials.php b/src/Model/RedsysCredentials.php
index 595ba0e7e..2fc1f1e85 100644
--- a/src/Model/RedsysCredentials.php
+++ b/src/Model/RedsysCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RedsysCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantCode', $data)) {
$this->setMerchantCode($data['merchantCode']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretCode', $data)) {
$this->setSecretCode($data['secretCode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantCode(): string
diff --git a/src/Model/RedsysSettings.php b/src/Model/RedsysSettings.php
index b6b4770f6..dc6d9d066 100644
--- a/src/Model/RedsysSettings.php
+++ b/src/Model/RedsysSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RedsysSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('terminal', $data)) {
$this->setTerminal($data['terminal']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTerminal(): ?string
diff --git a/src/Model/RefundTransaction.php b/src/Model/RefundTransaction.php
index b1e9a26be..3d49bf52a 100644
--- a/src/Model/RefundTransaction.php
+++ b/src/Model/RefundTransaction.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class RefundTransaction implements BalanceTransaction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -53,11 +56,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/ReminderScheduleInstructionFactory.php b/src/Model/ReminderScheduleInstructionFactory.php
index ddde960b4..00c115ea3 100644
--- a/src/Model/ReminderScheduleInstructionFactory.php
+++ b/src/Model/ReminderScheduleInstructionFactory.php
@@ -18,12 +18,12 @@
class ReminderScheduleInstructionFactory
{
- public static function from(array $data = []): ReminderScheduleInstruction
+ public static function from(array $data = [], array $metadata = []): ReminderScheduleInstruction
{
return match ($data['method']) {
- 'date-interval' => SchedulingMethodDateInterval::from($data),
- 'day-of-month' => SchedulingMethodDayOfMonth::from($data),
- 'day-of-week' => SchedulingMethodDayOfWeek::from($data),
+ 'date-interval' => SchedulingMethodDateInterval::from($data, $metadata),
+ 'day-of-month' => SchedulingMethodDayOfMonth::from($data, $metadata),
+ 'day-of-week' => SchedulingMethodDayOfWeek::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/RenewalSales.php b/src/Model/RenewalSales.php
index b8aaab28a..6fa797615 100644
--- a/src/Model/RenewalSales.php
+++ b/src/Model/RenewalSales.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RenewalSales implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/RenewalSalesData.php b/src/Model/RenewalSalesData.php
index 36c961ecf..e12cd926e 100644
--- a/src/Model/RenewalSalesData.php
+++ b/src/Model/RenewalSalesData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RenewalSalesData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationValue', $data)) {
$this->setAggregationValue($data['aggregationValue']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('renewalRefunds', $data)) {
$this->setRenewalRefunds($data['renewalRefunds']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationValue(): ?string
diff --git a/src/Model/ReportAmlChecks.php b/src/Model/ReportAmlChecks.php
new file mode 100644
index 000000000..be6f27e44
--- /dev/null
+++ b/src/Model/ReportAmlChecks.php
@@ -0,0 +1,114 @@
+setTotal($data['total']);
+ }
+ if (array_key_exists('propagated', $data)) {
+ $this->setPropagated($data['propagated']);
+ }
+ if (array_key_exists('resulted', $data)) {
+ $this->setResulted($data['resulted']);
+ }
+ if (array_key_exists('pending', $data)) {
+ $this->setPending($data['pending']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getTotal(): ?int
+ {
+ return $this->fields['total'] ?? null;
+ }
+
+ public function setTotal(null|int $total): static
+ {
+ $this->fields['total'] = $total;
+
+ return $this;
+ }
+
+ public function getPropagated(): ?int
+ {
+ return $this->fields['propagated'] ?? null;
+ }
+
+ public function setPropagated(null|int $propagated): static
+ {
+ $this->fields['propagated'] = $propagated;
+
+ return $this;
+ }
+
+ public function getResulted(): ?int
+ {
+ return $this->fields['resulted'] ?? null;
+ }
+
+ public function setResulted(null|int $resulted): static
+ {
+ $this->fields['resulted'] = $resulted;
+
+ return $this;
+ }
+
+ public function getPending(): ?int
+ {
+ return $this->fields['pending'] ?? null;
+ }
+
+ public function setPending(null|int $pending): static
+ {
+ $this->fields['pending'] = $pending;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('total', $this->fields)) {
+ $data['total'] = $this->fields['total'];
+ }
+ if (array_key_exists('propagated', $this->fields)) {
+ $data['propagated'] = $this->fields['propagated'];
+ }
+ if (array_key_exists('resulted', $this->fields)) {
+ $data['resulted'] = $this->fields['resulted'];
+ }
+ if (array_key_exists('pending', $this->fields)) {
+ $data['pending'] = $this->fields['pending'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/ReportAnnualRecurringRevenue.php b/src/Model/ReportAnnualRecurringRevenue.php
index 4971261cb..8ccb28fa5 100644
--- a/src/Model/ReportAnnualRecurringRevenue.php
+++ b/src/Model/ReportAnnualRecurringRevenue.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportAnnualRecurringRevenue implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportAnnualRecurringRevenueData.php b/src/Model/ReportAnnualRecurringRevenueData.php
index 5e1f3cadf..d5ad6ca4e 100644
--- a/src/Model/ReportAnnualRecurringRevenueData.php
+++ b/src/Model/ReportAnnualRecurringRevenueData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportAnnualRecurringRevenueData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('period', $data)) {
$this->setPeriod($data['period']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('breakdown', $data)) {
$this->setBreakdown($data['breakdown']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPeriod(): ?string
diff --git a/src/Model/ReportAnnualRecurringRevenueDataBreakdown.php b/src/Model/ReportAnnualRecurringRevenueDataBreakdown.php
index b1e90a440..224cbca17 100644
--- a/src/Model/ReportAnnualRecurringRevenueDataBreakdown.php
+++ b/src/Model/ReportAnnualRecurringRevenueDataBreakdown.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportAnnualRecurringRevenueDataBreakdown implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('change', $data)) {
$this->setChange($data['change']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('expansion', $data)) {
$this->setExpansion($data['expansion']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getChange(): ?float
diff --git a/src/Model/ReportDeclinedTransactions.php b/src/Model/ReportDeclinedTransactions.php
index 3994ad182..f72a69029 100644
--- a/src/Model/ReportDeclinedTransactions.php
+++ b/src/Model/ReportDeclinedTransactions.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportDeclinedTransactions implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportDeclinedTransactionsData.php b/src/Model/ReportDeclinedTransactionsData.php
index 08aa0c063..6375c46e6 100644
--- a/src/Model/ReportDeclinedTransactionsData.php
+++ b/src/Model/ReportDeclinedTransactionsData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportDeclinedTransactionsData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('message', $data)) {
$this->setMessage($data['message']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('percentage', $data)) {
$this->setPercentage($data['percentage']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMessage(): ?string
diff --git a/src/Model/ReportDeferredRevenue.php b/src/Model/ReportDeferredRevenue.php
index a480d5c53..de2b03d5b 100644
--- a/src/Model/ReportDeferredRevenue.php
+++ b/src/Model/ReportDeferredRevenue.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportDeferredRevenue implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('asOfDate', $data)) {
$this->setAsOfDate($data['asOfDate']);
@@ -41,11 +44,12 @@ public function __construct(array $data = [])
if (array_key_exists('months', $data)) {
$this->setMonths($data['months']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAsOfDate(): ?DateTimeImmutable
diff --git a/src/Model/ReportDeferredRevenueMonths.php b/src/Model/ReportDeferredRevenueMonths.php
index 0b83d298d..67c22c987 100644
--- a/src/Model/ReportDeferredRevenueMonths.php
+++ b/src/Model/ReportDeferredRevenueMonths.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportDeferredRevenueMonths implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('month', $data)) {
$this->setMonth($data['month']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('liabilityAsOfMonth', $data)) {
$this->setLiabilityAsOfMonth($data['liabilityAsOfMonth']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMonth(): ?string
diff --git a/src/Model/ReportDisputeDelays.php b/src/Model/ReportDisputeDelays.php
index 759504543..8369537ac 100644
--- a/src/Model/ReportDisputeDelays.php
+++ b/src/Model/ReportDisputeDelays.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportDisputeDelays implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportDisputeDelaysData.php b/src/Model/ReportDisputeDelaysData.php
index 95e423c11..68e3fd065 100644
--- a/src/Model/ReportDisputeDelaysData.php
+++ b/src/Model/ReportDisputeDelaysData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportDisputeDelaysData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationFieldValue', $data)) {
$this->setAggregationFieldValue($data['aggregationFieldValue']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('75th', $data)) {
$this->set75th($data['75th']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationFieldValue(): ?string
diff --git a/src/Model/ReportDisputes.php b/src/Model/ReportDisputes.php
index 82bb415af..4e0f77eff 100644
--- a/src/Model/ReportDisputes.php
+++ b/src/Model/ReportDisputes.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportDisputes implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportDisputesData.php b/src/Model/ReportDisputesData.php
index 17b78a55b..1ec4dade7 100644
--- a/src/Model/ReportDisputesData.php
+++ b/src/Model/ReportDisputesData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportDisputesData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationValue', $data)) {
$this->setAggregationValue($data['aggregationValue']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('ratioAmountMastercard', $data)) {
$this->setRatioAmountMastercard($data['ratioAmountMastercard']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationValue(): ?string
diff --git a/src/Model/ReportEventsTriggeredSummary.php b/src/Model/ReportEventsTriggeredSummary.php
index 944b9a5f8..a229a5ec0 100644
--- a/src/Model/ReportEventsTriggeredSummary.php
+++ b/src/Model/ReportEventsTriggeredSummary.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportEventsTriggeredSummary implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportEventsTriggeredSummaryData.php b/src/Model/ReportEventsTriggeredSummaryData.php
index 94590dba4..919ca6c16 100644
--- a/src/Model/ReportEventsTriggeredSummaryData.php
+++ b/src/Model/ReportEventsTriggeredSummaryData.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportEventsTriggeredSummaryData implements JsonSerializable
{
+ use HasMetadata;
+
public const EVENT_NAME_DISPUTE_CREATED = 'dispute-created';
public const EVENT_NAME_GATEWAY_ACCOUNT_REQUESTED = 'gateway-account-requested';
@@ -38,7 +41,7 @@ class ReportEventsTriggeredSummaryData implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('eventName', $data)) {
$this->setEventName($data['eventName']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('count', $data)) {
$this->setCount($data['count']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEventName(): ?string
diff --git a/src/Model/ReportJournal.php b/src/Model/ReportJournal.php
index 5d59da7ff..219c78242 100644
--- a/src/Model/ReportJournal.php
+++ b/src/Model/ReportJournal.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportJournal implements JsonSerializable
{
+ use HasMetadata;
+
public const AGGREGATION_FIELD_PRODUCT_ACCOUNTING_CODE = 'product.accountingCode';
public const AGGREGATION_FIELD_PRODUCT_ID = 'product.id';
@@ -26,7 +29,7 @@ class ReportJournal implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationField', $data)) {
$this->setAggregationField($data['aggregationField']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationField(): ?string
diff --git a/src/Model/ReportJournalData.php b/src/Model/ReportJournalData.php
index 2b4f4c264..b4d16fba6 100644
--- a/src/Model/ReportJournalData.php
+++ b/src/Model/ReportJournalData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportJournalData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationValue', $data)) {
$this->setAggregationValue($data['aggregationValue']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('remainingAmount', $data)) {
$this->setRemainingAmount($data['remainingAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationValue(): ?string
diff --git a/src/Model/ReportKycRejections.php b/src/Model/ReportKycRejections.php
index dd5ba320e..59f7eb8f6 100644
--- a/src/Model/ReportKycRejections.php
+++ b/src/Model/ReportKycRejections.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportKycRejections implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportKycRejectionsData.php b/src/Model/ReportKycRejectionsData.php
index a699e0687..8754c162e 100644
--- a/src/Model/ReportKycRejectionsData.php
+++ b/src/Model/ReportKycRejectionsData.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportKycRejectionsData implements JsonSerializable
{
+ use HasMetadata;
+
public const DOCUMENT_TYPE_IDENTITY_PROOF = 'identity-proof';
public const DOCUMENT_TYPE_ADDRESS_PROOF = 'address-proof';
@@ -30,7 +33,7 @@ class ReportKycRejectionsData implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('documentType', $data)) {
$this->setDocumentType($data['documentType']);
@@ -38,11 +41,12 @@ public function __construct(array $data = [])
if (array_key_exists('rejectionReasons', $data)) {
$this->setRejectionReasons($data['rejectionReasons']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDocumentType(): ?string
diff --git a/src/Model/ReportKycRejectionsDataRejectionReasons.php b/src/Model/ReportKycRejectionsDataRejectionReasons.php
index 311495154..4e545b7b4 100644
--- a/src/Model/ReportKycRejectionsDataRejectionReasons.php
+++ b/src/Model/ReportKycRejectionsDataRejectionReasons.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportKycRejectionsDataRejectionReasons implements JsonSerializable
{
+ use HasMetadata;
+
public const REJECTION_REASON_DOCUMENT_UNREADABLE = 'document-unreadable';
public const REJECTION_REASON_DOCUMENT_EXPIRED = 'document-expired';
@@ -54,7 +57,7 @@ class ReportKycRejectionsDataRejectionReasons implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('rejectionReason', $data)) {
$this->setRejectionReason($data['rejectionReason']);
@@ -62,11 +65,12 @@ public function __construct(array $data = [])
if (array_key_exists('count', $data)) {
$this->setCount($data['count']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRejectionReason(): ?string
diff --git a/src/Model/ReportKycRequests.php b/src/Model/ReportKycRequests.php
index 5b2f86afb..8f6ba0f2c 100644
--- a/src/Model/ReportKycRequests.php
+++ b/src/Model/ReportKycRequests.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportKycRequests implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportKycRequestsData.php b/src/Model/ReportKycRequestsData.php
index 3fedd005e..ba14ad923 100644
--- a/src/Model/ReportKycRequestsData.php
+++ b/src/Model/ReportKycRequestsData.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportKycRequestsData implements JsonSerializable
{
+ use HasMetadata;
+
public const REJECTION_REASON_ABANDONED = 'abandoned';
public const REJECTION_REASON_EXPIRED = 'expired';
@@ -30,7 +33,7 @@ class ReportKycRequestsData implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('rejectionReason', $data)) {
$this->setRejectionReason($data['rejectionReason']);
@@ -38,11 +41,12 @@ public function __construct(array $data = [])
if (array_key_exists('count', $data)) {
$this->setCount($data['count']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRejectionReason(): ?string
diff --git a/src/Model/ReportMonthlyRecurringRevenue.php b/src/Model/ReportMonthlyRecurringRevenue.php
index b468e6309..aaca4a192 100644
--- a/src/Model/ReportMonthlyRecurringRevenue.php
+++ b/src/Model/ReportMonthlyRecurringRevenue.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportMonthlyRecurringRevenue implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportMonthlyRecurringRevenueData.php b/src/Model/ReportMonthlyRecurringRevenueData.php
index 362a82da4..da10cf913 100644
--- a/src/Model/ReportMonthlyRecurringRevenueData.php
+++ b/src/Model/ReportMonthlyRecurringRevenueData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportMonthlyRecurringRevenueData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('period', $data)) {
$this->setPeriod($data['period']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('breakdown', $data)) {
$this->setBreakdown($data['breakdown']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPeriod(): ?string
diff --git a/src/Model/ReportMonthlyRecurringRevenueDataBreakdown.php b/src/Model/ReportMonthlyRecurringRevenueDataBreakdown.php
index 9b92a3ae8..f7d03f71e 100644
--- a/src/Model/ReportMonthlyRecurringRevenueDataBreakdown.php
+++ b/src/Model/ReportMonthlyRecurringRevenueDataBreakdown.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportMonthlyRecurringRevenueDataBreakdown implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('change', $data)) {
$this->setChange($data['change']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('expansion', $data)) {
$this->setExpansion($data['expansion']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getChange(): ?float
diff --git a/src/Model/ReportRetentionPercentage.php b/src/Model/ReportRetentionPercentage.php
index f2e7f2ff2..5d57ffe1c 100644
--- a/src/Model/ReportRetentionPercentage.php
+++ b/src/Model/ReportRetentionPercentage.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRetentionPercentage implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportRetentionPercentageData.php b/src/Model/ReportRetentionPercentageData.php
index 86af50862..e8ef061d3 100644
--- a/src/Model/ReportRetentionPercentageData.php
+++ b/src/Model/ReportRetentionPercentageData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRetentionPercentageData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationValue', $data)) {
$this->setAggregationValue($data['aggregationValue']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('periods', $data)) {
$this->setPeriods($data['periods']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationValue(): ?string
diff --git a/src/Model/ReportRetentionPercentageDataPeriods.php b/src/Model/ReportRetentionPercentageDataPeriods.php
index 98031a386..ff799a49a 100644
--- a/src/Model/ReportRetentionPercentageDataPeriods.php
+++ b/src/Model/ReportRetentionPercentageDataPeriods.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRetentionPercentageDataPeriods implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('period', $data)) {
$this->setPeriod($data['period']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('canceledSubscriptionsCount', $data)) {
$this->setCanceledSubscriptionsCount($data['canceledSubscriptionsCount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPeriod(): ?int
diff --git a/src/Model/ReportRetentionValue.php b/src/Model/ReportRetentionValue.php
index 46aff8ab1..221d0af95 100644
--- a/src/Model/ReportRetentionValue.php
+++ b/src/Model/ReportRetentionValue.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRetentionValue implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportRetentionValueData.php b/src/Model/ReportRetentionValueData.php
index de836d57c..efd1aabbb 100644
--- a/src/Model/ReportRetentionValueData.php
+++ b/src/Model/ReportRetentionValueData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRetentionValueData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationValue', $data)) {
$this->setAggregationValue($data['aggregationValue']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('periods', $data)) {
$this->setPeriods($data['periods']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationValue(): ?string
diff --git a/src/Model/ReportRetentionValueDataPeriods.php b/src/Model/ReportRetentionValueDataPeriods.php
index be33cf26a..2a29367df 100644
--- a/src/Model/ReportRetentionValueDataPeriods.php
+++ b/src/Model/ReportRetentionValueDataPeriods.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRetentionValueDataPeriods implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('period', $data)) {
$this->setPeriod($data['period']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('transactionsValue', $data)) {
$this->setTransactionsValue($data['transactionsValue']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPeriod(): ?int
diff --git a/src/Model/ReportRevenueWaterfall.php b/src/Model/ReportRevenueWaterfall.php
index ee84a996e..2fcd88876 100644
--- a/src/Model/ReportRevenueWaterfall.php
+++ b/src/Model/ReportRevenueWaterfall.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRevenueWaterfall implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('issuedMonth', $data)) {
$this->setIssuedMonth($data['issuedMonth']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('waterfall', $data)) {
$this->setWaterfall($data['waterfall']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIssuedMonth(): ?string
diff --git a/src/Model/ReportRevenueWaterfallWaterfall.php b/src/Model/ReportRevenueWaterfallWaterfall.php
index 2e22bac4d..fa810ffb3 100644
--- a/src/Model/ReportRevenueWaterfallWaterfall.php
+++ b/src/Model/ReportRevenueWaterfallWaterfall.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRevenueWaterfallWaterfall implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('recognizedMonth', $data)) {
$this->setRecognizedMonth($data['recognizedMonth']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRecognizedMonth(): ?string
diff --git a/src/Model/ReportRulesMatchedSummary.php b/src/Model/ReportRulesMatchedSummary.php
index 0e9c206b6..2567b8967 100644
--- a/src/Model/ReportRulesMatchedSummary.php
+++ b/src/Model/ReportRulesMatchedSummary.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRulesMatchedSummary implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportRulesMatchedSummaryData.php b/src/Model/ReportRulesMatchedSummaryData.php
index 637d1ca3b..388191bcc 100644
--- a/src/Model/ReportRulesMatchedSummaryData.php
+++ b/src/Model/ReportRulesMatchedSummaryData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportRulesMatchedSummaryData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('rule', $data)) {
$this->setRule($data['rule']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('approvalRate', $data)) {
$this->setApprovalRate($data['approvalRate']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRule(): ?string
diff --git a/src/Model/ReportTax.php b/src/Model/ReportTax.php
index fba746d62..79eb60b8b 100644
--- a/src/Model/ReportTax.php
+++ b/src/Model/ReportTax.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportTax implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportTaxData.php b/src/Model/ReportTaxData.php
index a0b8b9c88..8e847a1a8 100644
--- a/src/Model/ReportTaxData.php
+++ b/src/Model/ReportTaxData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportTaxData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('country', $data)) {
$this->setCountry($data['country']);
@@ -64,11 +67,12 @@ public function __construct(array $data = [])
if (array_key_exists('nontaxableSalesAmount', $data)) {
$this->setNontaxableSalesAmount($data['nontaxableSalesAmount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCountry(): ?string
diff --git a/src/Model/ReportTransactions.php b/src/Model/ReportTransactions.php
index 529e951aa..0687ec85b 100644
--- a/src/Model/ReportTransactions.php
+++ b/src/Model/ReportTransactions.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportTransactions implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ReportTransactionsData.php b/src/Model/ReportTransactionsData.php
index ef08cffdc..433271d53 100644
--- a/src/Model/ReportTransactionsData.php
+++ b/src/Model/ReportTransactionsData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReportTransactionsData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationFieldValue', $data)) {
$this->setAggregationFieldValue($data['aggregationFieldValue']);
@@ -64,11 +67,12 @@ public function __construct(array $data = [])
if (array_key_exists('unapprovedCount', $data)) {
$this->setUnapprovedCount($data['unapprovedCount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationFieldValue(): ?string
diff --git a/src/Model/ResendEmailTimelineAction.php b/src/Model/ResendEmailTimelineAction.php
index 4e4f10619..c8fa7a2e0 100644
--- a/src/Model/ResendEmailTimelineAction.php
+++ b/src/Model/ResendEmailTimelineAction.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ResendEmailTimelineAction implements TimelineAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('messageId', $data)) {
$this->setMessageId($data['messageId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAction(): string
diff --git a/src/Model/ResetPasswordToken.php b/src/Model/ResetPasswordToken.php
index 1e610efd9..514d0da48 100644
--- a/src/Model/ResetPasswordToken.php
+++ b/src/Model/ResetPasswordToken.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ResetPasswordToken implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('token', $data)) {
$this->setToken($data['token']);
@@ -39,11 +42,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getToken(): ?string
diff --git a/src/Model/ResourceLink.php b/src/Model/ResourceLink.php
index 0d82241f1..37fb01a22 100644
--- a/src/Model/ResourceLink.php
+++ b/src/Model/ResourceLink.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ResourceLink implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('href', $data)) {
$this->setHref($data['href']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('rel', $data)) {
$this->setRel($data['rel']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getHref(): ?string
diff --git a/src/Model/ReverseTransaction.php b/src/Model/ReverseTransaction.php
index 01cd15501..a5c389479 100644
--- a/src/Model/ReverseTransaction.php
+++ b/src/Model/ReverseTransaction.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class ReverseTransaction implements BalanceTransaction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -53,11 +56,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/RiskMetadata.php b/src/Model/RiskMetadata.php
index 29e028a3d..462c843f0 100644
--- a/src/Model/RiskMetadata.php
+++ b/src/Model/RiskMetadata.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskMetadata implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('ipAddress', $data)) {
$this->setIpAddress($data['ipAddress']);
@@ -124,11 +127,12 @@ public function __construct(array $data = [])
if (array_key_exists('score', $data)) {
$this->setScore($data['score']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIpAddress(): ?string
diff --git a/src/Model/RiskMetadataBrowserData.php b/src/Model/RiskMetadataBrowserData.php
index 1bb748e9c..d7fe14933 100644
--- a/src/Model/RiskMetadataBrowserData.php
+++ b/src/Model/RiskMetadataBrowserData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskMetadataBrowserData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('colorDepth', $data)) {
$this->setColorDepth($data['colorDepth']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('isAdBlockEnabled', $data)) {
$this->setIsAdBlockEnabled($data['isAdBlockEnabled']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getColorDepth(): int
diff --git a/src/Model/RiskMetadataExtraData.php b/src/Model/RiskMetadataExtraData.php
index 69f9c4718..a5a5d6109 100644
--- a/src/Model/RiskMetadataExtraData.php
+++ b/src/Model/RiskMetadataExtraData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskMetadataExtraData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('kountFraudSessionId', $data)) {
$this->setKountFraudSessionId($data['kountFraudSessionId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threatMetrixSessionId', $data)) {
$this->setThreatMetrixSessionId($data['threatMetrixSessionId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getKountFraudSessionId(): ?string
diff --git a/src/Model/RiskReserveReleaseTransaction.php b/src/Model/RiskReserveReleaseTransaction.php
index 0ba69ebb8..5b8a10e4f 100644
--- a/src/Model/RiskReserveReleaseTransaction.php
+++ b/src/Model/RiskReserveReleaseTransaction.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskReserveReleaseTransaction implements BalanceTransaction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -53,11 +56,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/RiskReserveTransaction.php b/src/Model/RiskReserveTransaction.php
index 531163516..3147b520f 100644
--- a/src/Model/RiskReserveTransaction.php
+++ b/src/Model/RiskReserveTransaction.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskReserveTransaction implements BalanceTransaction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/RiskReserveTransactionRiskReserve.php b/src/Model/RiskReserveTransactionRiskReserve.php
index 103c1790a..e2f89b318 100644
--- a/src/Model/RiskReserveTransactionRiskReserve.php
+++ b/src/Model/RiskReserveTransactionRiskReserve.php
@@ -17,21 +17,25 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskReserveTransactionRiskReserve implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('releaseTime', $data)) {
$this->setReleaseTime($data['releaseTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getReleaseTime(): ?DateTimeImmutable
diff --git a/src/Model/RiskScoreBlocklist.php b/src/Model/RiskScoreBlocklist.php
index 70c5181ef..fcf1fb80a 100644
--- a/src/Model/RiskScoreBlocklist.php
+++ b/src/Model/RiskScoreBlocklist.php
@@ -15,214 +15,28 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskScoreBlocklist implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
- if (array_key_exists('address', $data)) {
- $this->setAddress($data['address']);
- }
- if (array_key_exists('bank-account', $data)) {
- $this->setBankAccount($data['bank-account']);
- }
- if (array_key_exists('bin', $data)) {
- $this->setBin($data['bin']);
- }
- if (array_key_exists('country', $data)) {
- $this->setCountry($data['country']);
- }
- if (array_key_exists('customer-id', $data)) {
- $this->setCustomerId($data['customer-id']);
- }
- if (array_key_exists('email', $data)) {
- $this->setEmail($data['email']);
- }
- if (array_key_exists('email-domain', $data)) {
- $this->setEmailDomain($data['email-domain']);
- }
- if (array_key_exists('fingerprint', $data)) {
- $this->setFingerprint($data['fingerprint']);
- }
- if (array_key_exists('ip-address', $data)) {
- $this->setIpAddress($data['ip-address']);
- }
- if (array_key_exists('payment-card', $data)) {
- $this->setPaymentCard($data['payment-card']);
- }
if (array_key_exists('permanentlyBlockList', $data)) {
$this->setPermanentlyBlockList($data['permanentlyBlockList']);
}
if (array_key_exists('temporaryBlockList', $data)) {
$this->setTemporaryBlockList($data['temporaryBlockList']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
- {
- return new self($data);
- }
-
- public function getAddress(): ?RiskScoreBlocklistType
+ public static function from(array $data = [], array $metadata = []): self
{
- return $this->fields['address'] ?? null;
- }
-
- public function setAddress(null|RiskScoreBlocklistType|array $address): static
- {
- if ($address !== null && !($address instanceof RiskScoreBlocklistType)) {
- $address = RiskScoreBlocklistType::from($address);
- }
-
- $this->fields['address'] = $address;
-
- return $this;
- }
-
- public function getBankAccount(): ?RiskScoreBlocklistType
- {
- return $this->fields['bank-account'] ?? null;
- }
-
- public function setBankAccount(null|RiskScoreBlocklistType|array $bankAccount): static
- {
- if ($bankAccount !== null && !($bankAccount instanceof RiskScoreBlocklistType)) {
- $bankAccount = RiskScoreBlocklistType::from($bankAccount);
- }
-
- $this->fields['bank-account'] = $bankAccount;
-
- return $this;
- }
-
- public function getBin(): ?RiskScoreBlocklistType
- {
- return $this->fields['bin'] ?? null;
- }
-
- public function setBin(null|RiskScoreBlocklistType|array $bin): static
- {
- if ($bin !== null && !($bin instanceof RiskScoreBlocklistType)) {
- $bin = RiskScoreBlocklistType::from($bin);
- }
-
- $this->fields['bin'] = $bin;
-
- return $this;
- }
-
- public function getCountry(): ?RiskScoreBlocklistType
- {
- return $this->fields['country'] ?? null;
- }
-
- public function setCountry(null|RiskScoreBlocklistType|array $country): static
- {
- if ($country !== null && !($country instanceof RiskScoreBlocklistType)) {
- $country = RiskScoreBlocklistType::from($country);
- }
-
- $this->fields['country'] = $country;
-
- return $this;
- }
-
- public function getCustomerId(): ?RiskScoreBlocklistType
- {
- return $this->fields['customer-id'] ?? null;
- }
-
- public function setCustomerId(null|RiskScoreBlocklistType|array $customerId): static
- {
- if ($customerId !== null && !($customerId instanceof RiskScoreBlocklistType)) {
- $customerId = RiskScoreBlocklistType::from($customerId);
- }
-
- $this->fields['customer-id'] = $customerId;
-
- return $this;
- }
-
- public function getEmail(): ?RiskScoreBlocklistType
- {
- return $this->fields['email'] ?? null;
- }
-
- public function setEmail(null|RiskScoreBlocklistType|array $email): static
- {
- if ($email !== null && !($email instanceof RiskScoreBlocklistType)) {
- $email = RiskScoreBlocklistType::from($email);
- }
-
- $this->fields['email'] = $email;
-
- return $this;
- }
-
- public function getEmailDomain(): ?RiskScoreBlocklistType
- {
- return $this->fields['email-domain'] ?? null;
- }
-
- public function setEmailDomain(null|RiskScoreBlocklistType|array $emailDomain): static
- {
- if ($emailDomain !== null && !($emailDomain instanceof RiskScoreBlocklistType)) {
- $emailDomain = RiskScoreBlocklistType::from($emailDomain);
- }
-
- $this->fields['email-domain'] = $emailDomain;
-
- return $this;
- }
-
- public function getFingerprint(): ?RiskScoreBlocklistType
- {
- return $this->fields['fingerprint'] ?? null;
- }
-
- public function setFingerprint(null|RiskScoreBlocklistType|array $fingerprint): static
- {
- if ($fingerprint !== null && !($fingerprint instanceof RiskScoreBlocklistType)) {
- $fingerprint = RiskScoreBlocklistType::from($fingerprint);
- }
-
- $this->fields['fingerprint'] = $fingerprint;
-
- return $this;
- }
-
- public function getIpAddress(): ?RiskScoreBlocklistType
- {
- return $this->fields['ip-address'] ?? null;
- }
-
- public function setIpAddress(null|RiskScoreBlocklistType|array $ipAddress): static
- {
- if ($ipAddress !== null && !($ipAddress instanceof RiskScoreBlocklistType)) {
- $ipAddress = RiskScoreBlocklistType::from($ipAddress);
- }
-
- $this->fields['ip-address'] = $ipAddress;
-
- return $this;
- }
-
- public function getPaymentCard(): ?RiskScoreBlocklistType
- {
- return $this->fields['payment-card'] ?? null;
- }
-
- public function setPaymentCard(null|RiskScoreBlocklistType|array $paymentCard): static
- {
- if ($paymentCard !== null && !($paymentCard instanceof RiskScoreBlocklistType)) {
- $paymentCard = RiskScoreBlocklistType::from($paymentCard);
- }
-
- $this->fields['payment-card'] = $paymentCard;
-
- return $this;
+ return new self($data, $metadata);
}
public function getPermanentlyBlockList(): ?RiskScoreBlocklistPermanentRules
@@ -260,36 +74,6 @@ public function setTemporaryBlockList(null|RiskScoreBlocklistTemporaryRules|arra
public function jsonSerialize(): array
{
$data = [];
- if (array_key_exists('address', $this->fields)) {
- $data['address'] = $this->fields['address']?->jsonSerialize();
- }
- if (array_key_exists('bank-account', $this->fields)) {
- $data['bank-account'] = $this->fields['bank-account']?->jsonSerialize();
- }
- if (array_key_exists('bin', $this->fields)) {
- $data['bin'] = $this->fields['bin']?->jsonSerialize();
- }
- if (array_key_exists('country', $this->fields)) {
- $data['country'] = $this->fields['country']?->jsonSerialize();
- }
- if (array_key_exists('customer-id', $this->fields)) {
- $data['customer-id'] = $this->fields['customer-id']?->jsonSerialize();
- }
- if (array_key_exists('email', $this->fields)) {
- $data['email'] = $this->fields['email']?->jsonSerialize();
- }
- if (array_key_exists('email-domain', $this->fields)) {
- $data['email-domain'] = $this->fields['email-domain']?->jsonSerialize();
- }
- if (array_key_exists('fingerprint', $this->fields)) {
- $data['fingerprint'] = $this->fields['fingerprint']?->jsonSerialize();
- }
- if (array_key_exists('ip-address', $this->fields)) {
- $data['ip-address'] = $this->fields['ip-address']?->jsonSerialize();
- }
- if (array_key_exists('payment-card', $this->fields)) {
- $data['payment-card'] = $this->fields['payment-card']?->jsonSerialize();
- }
if (array_key_exists('permanentlyBlockList', $this->fields)) {
$data['permanentlyBlockList'] = $this->fields['permanentlyBlockList']?->jsonSerialize();
}
diff --git a/src/Model/RiskScoreBlocklistPermanentRule.php b/src/Model/RiskScoreBlocklistPermanentRule.php
index 147eeb9bf..1abe02bd3 100644
--- a/src/Model/RiskScoreBlocklistPermanentRule.php
+++ b/src/Model/RiskScoreBlocklistPermanentRule.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskScoreBlocklistPermanentRule implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('riskScoreThreshold', $data)) {
$this->setRiskScoreThreshold($data['riskScoreThreshold']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRiskScoreThreshold(): int
diff --git a/src/Model/RiskScoreBlocklistPermanentRules.php b/src/Model/RiskScoreBlocklistPermanentRules.php
index 4353077be..0f79f70c5 100644
--- a/src/Model/RiskScoreBlocklistPermanentRules.php
+++ b/src/Model/RiskScoreBlocklistPermanentRules.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskScoreBlocklistPermanentRules implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('address', $data)) {
$this->setAddress($data['address']);
@@ -52,11 +55,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentCard', $data)) {
$this->setPaymentCard($data['paymentCard']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAddress(): ?RiskScoreBlocklistPermanentRule
diff --git a/src/Model/RiskScoreBlocklistTemporaryRule.php b/src/Model/RiskScoreBlocklistTemporaryRule.php
index 91b3a18fa..2e1c186c5 100644
--- a/src/Model/RiskScoreBlocklistTemporaryRule.php
+++ b/src/Model/RiskScoreBlocklistTemporaryRule.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskScoreBlocklistTemporaryRule implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('riskScoreThreshold', $data)) {
$this->setRiskScoreThreshold($data['riskScoreThreshold']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('ttl', $data)) {
$this->setTtl($data['ttl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRiskScoreThreshold(): int
diff --git a/src/Model/RiskScoreBlocklistTemporaryRules.php b/src/Model/RiskScoreBlocklistTemporaryRules.php
index 327e6b984..020b4344a 100644
--- a/src/Model/RiskScoreBlocklistTemporaryRules.php
+++ b/src/Model/RiskScoreBlocklistTemporaryRules.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskScoreBlocklistTemporaryRules implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('address', $data)) {
$this->setAddress($data['address']);
@@ -52,11 +55,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentCard', $data)) {
$this->setPaymentCard($data['paymentCard']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAddress(): ?RiskScoreBlocklistTemporaryRule
diff --git a/src/Model/RiskScoreBlocklistType.php b/src/Model/RiskScoreBlocklistType.php
deleted file mode 100644
index c1d6ed5f9..000000000
--- a/src/Model/RiskScoreBlocklistType.php
+++ /dev/null
@@ -1,74 +0,0 @@
-setRiskScoreThreshold($data['riskScoreThreshold']);
- }
- if (array_key_exists('ttl', $data)) {
- $this->setTtl($data['ttl']);
- }
- }
-
- public static function from(array $data = []): self
- {
- return new self($data);
- }
-
- public function getRiskScoreThreshold(): int
- {
- return $this->fields['riskScoreThreshold'];
- }
-
- public function setRiskScoreThreshold(int $riskScoreThreshold): static
- {
- $this->fields['riskScoreThreshold'] = $riskScoreThreshold;
-
- return $this;
- }
-
- public function getTtl(): int
- {
- return $this->fields['ttl'];
- }
-
- public function setTtl(int $ttl): static
- {
- $this->fields['ttl'] = $ttl;
-
- return $this;
- }
-
- public function jsonSerialize(): array
- {
- $data = [];
- if (array_key_exists('riskScoreThreshold', $this->fields)) {
- $data['riskScoreThreshold'] = $this->fields['riskScoreThreshold'];
- }
- if (array_key_exists('ttl', $this->fields)) {
- $data['ttl'] = $this->fields['ttl'];
- }
-
- return $data;
- }
-}
diff --git a/src/Model/RiskScoreBoolean.php b/src/Model/RiskScoreBoolean.php
index 9b30af7d0..b6a6608e8 100644
--- a/src/Model/RiskScoreBoolean.php
+++ b/src/Model/RiskScoreBoolean.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskScoreBoolean implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getValue(): int
diff --git a/src/Model/RiskScoreBracket.php b/src/Model/RiskScoreBracket.php
index 82d6ea1dd..25fb0d694 100644
--- a/src/Model/RiskScoreBracket.php
+++ b/src/Model/RiskScoreBracket.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskScoreBracket implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('brackets', $data)) {
$this->setBrackets($data['brackets']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/RiskScoreBracketBrackets0.php b/src/Model/RiskScoreBracketBrackets0.php
index 53f769ef1..07d380bc2 100644
--- a/src/Model/RiskScoreBracketBrackets0.php
+++ b/src/Model/RiskScoreBracketBrackets0.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RiskScoreBracketBrackets0 implements RiskScoreBracketBrackets
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('start', $data)) {
$this->setStart($data['start']);
@@ -29,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStart(): ?int
diff --git a/src/Model/RiskScoreBracketBrackets1.php b/src/Model/RiskScoreBracketBrackets1.php
index 5627ee467..a6f2bfc4e 100644
--- a/src/Model/RiskScoreBracketBrackets1.php
+++ b/src/Model/RiskScoreBracketBrackets1.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RiskScoreBracketBrackets1 implements RiskScoreBracketBrackets
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('start', $data)) {
$this->setStart($data['start']);
@@ -29,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStart(): ?int
diff --git a/src/Model/RiskScoreBracketBracketsFactory.php b/src/Model/RiskScoreBracketBracketsFactory.php
index 2d54e490b..94b288076 100644
--- a/src/Model/RiskScoreBracketBracketsFactory.php
+++ b/src/Model/RiskScoreBracketBracketsFactory.php
@@ -16,8 +16,8 @@
class RiskScoreBracketBracketsFactory
{
- public static function from(array $data = []): RiskScoreBracketBrackets
+ public static function from(array $data = [], array $metadata = []): RiskScoreBracketBrackets
{
- return new RiskScoreBracketBrackets0($data);
+ return new RiskScoreBracketBrackets0($data, $metadata);
}
}
diff --git a/src/Model/RiskScoreRules.php b/src/Model/RiskScoreRules.php
index 2bd6eeaee..c190c5f91 100644
--- a/src/Model/RiskScoreRules.php
+++ b/src/Model/RiskScoreRules.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RiskScoreRules implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('isProxy', $data)) {
$this->setIsProxy($data['isProxy']);
@@ -88,11 +91,12 @@ public function __construct(array $data = [])
if (array_key_exists('customerVelocity', $data)) {
$this->setCustomerVelocity($data['customerVelocity']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIsProxy(): RiskScoreBoolean
diff --git a/src/Model/Role.php b/src/Model/Role.php
index 84c2757bd..13ecb5d4c 100644
--- a/src/Model/Role.php
+++ b/src/Model/Role.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Role implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -60,11 +63,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/RoleEmbedded.php b/src/Model/RoleEmbedded.php
index b4b792569..f19bcafa4 100644
--- a/src/Model/RoleEmbedded.php
+++ b/src/Model/RoleEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RoleEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('juniors', $data)) {
$this->setJuniors($data['juniors']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getJuniors(): ?array
diff --git a/src/Model/Rotessa.php b/src/Model/Rotessa.php
index 4bbdace7a..fa98437bb 100644
--- a/src/Model/Rotessa.php
+++ b/src/Model/Rotessa.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Rotessa extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Rotessa',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): RotessaCredentials
diff --git a/src/Model/RotessaCredentials.php b/src/Model/RotessaCredentials.php
index 8e5791f45..b3272054b 100644
--- a/src/Model/RotessaCredentials.php
+++ b/src/Model/RotessaCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RotessaCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/RotessaSettings.php b/src/Model/RotessaSettings.php
index f2c652e82..a40483887 100644
--- a/src/Model/RotessaSettings.php
+++ b/src/Model/RotessaSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RotessaSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('delay', $data)) {
$this->setDelay($data['delay']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDelay(): int
diff --git a/src/Model/Rule.php b/src/Model/Rule.php
index 1a56ed04b..e6d3a847b 100644
--- a/src/Model/Rule.php
+++ b/src/Model/Rule.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Rule implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('final', $data)) {
$this->setFinal($data['final']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/RuleAction.php b/src/Model/RuleAction.php
index 075e46a28..52bd5f008 100644
--- a/src/Model/RuleAction.php
+++ b/src/Model/RuleAction.php
@@ -16,9 +16,12 @@
use InvalidArgumentException;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
abstract class RuleAction implements JsonSerializable
{
+ use HasMetadata;
+
public const NAME_ABANDON_SCHEDULED_PAYMENTS = 'abandon-scheduled-payments';
public const NAME_ADD_RISK_SCORE = 'add-risk-score';
@@ -85,7 +88,7 @@ abstract class RuleAction implements JsonSerializable
private array $fields = [];
- protected function __construct(array $data = [])
+ protected function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -93,63 +96,64 @@ protected function __construct(array $data = [])
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
switch ($data['name']) {
case 'abandon-scheduled-payments':
- return RuleActionAbandonScheduledPayments::from($data);
+ return RuleActionAbandonScheduledPayments::from($data, $metadata);
case 'blocklist':
- return RuleActionAddBlockList::from($data);
+ return RuleActionAddBlockList::from($data, $metadata);
case 'add-risk-score':
- return RuleActionAddRiskScore::from($data);
+ return RuleActionAddRiskScore::from($data, $metadata);
case 'adjust-ready-to-pay':
- return RuleActionAdjustReadyToPay::from($data);
+ return RuleActionAdjustReadyToPay::from($data, $metadata);
case 'adjust-ready-to-payout':
- return RuleActionAdjustReadyToPayout::from($data);
+ return RuleActionAdjustReadyToPayout::from($data, $metadata);
case 'cancel-scheduled-payments':
- return RuleActionCancelScheduledPayments::from($data);
+ return RuleActionCancelScheduledPayments::from($data, $metadata);
case 'check-ontario-restriction':
- return RuleActionCheckOntarioRestriction::from($data);
+ return RuleActionCheckOntarioRestriction::from($data, $metadata);
case 'create-intuit-quickbooks-balance-transaction-entry':
- return RuleActionCreateIntuitQuickbooksBalanceTransactionEntry::from($data);
+ return RuleActionCreateIntuitQuickbooksBalanceTransactionEntry::from($data, $metadata);
case 'create-intuit-quickbooks-invoice':
- return RuleActionCreateIntuitQuickbooksInvoice::from($data);
+ return RuleActionCreateIntuitQuickbooksInvoice::from($data, $metadata);
case 'create-intuit-quickbooks-payment':
- return RuleActionCreateIntuitQuickbooksPayment::from($data);
+ return RuleActionCreateIntuitQuickbooksPayment::from($data, $metadata);
case 'create-intuit-quickbooks-refund-receipt':
- return RuleActionCreateIntuitQuickbooksRefundReceipt::from($data);
+ return RuleActionCreateIntuitQuickbooksRefundReceipt::from($data, $metadata);
case 'create-intuit-quickbooks-revenue-recognition-entry':
- return RuleActionCreateIntuitQuickbooksRevenueRecognitionEntry::from($data);
+ return RuleActionCreateIntuitQuickbooksRevenueRecognitionEntry::from($data, $metadata);
case 'decline-transaction':
- return RuleActionDeclineTransaction::from($data);
+ return RuleActionDeclineTransaction::from($data, $metadata);
case 'display-other-choices':
- return RuleActionDisplayOtherChoices::from($data);
+ return RuleActionDisplayOtherChoices::from($data, $metadata);
case 'guess-payment-card-expiration':
- return RuleActionGuessPaymentCardExpiration::from($data);
+ return RuleActionGuessPaymentCardExpiration::from($data, $metadata);
case 'perform-experian-check':
- return RuleActionPerformExperianCheck::from($data);
+ return RuleActionPerformExperianCheck::from($data, $metadata);
case 'pick-gateway-account':
- return RuleActionPickGatewayAccount::from($data);
+ return RuleActionPickGatewayAccount::from($data, $metadata);
case 'request-kyc':
- return RuleActionRequestKyc::from($data);
+ return RuleActionRequestKyc::from($data, $metadata);
case 'schedule-invoice-retry':
- return RuleActionScheduleInvoiceRetry::from($data);
+ return RuleActionScheduleInvoiceRetry::from($data, $metadata);
case 'schedule-payment':
- return RuleActionSchedulePayment::from($data);
+ return RuleActionSchedulePayment::from($data, $metadata);
case 'schedule-reminder':
- return RuleActionScheduleReminder::from($data);
+ return RuleActionScheduleReminder::from($data, $metadata);
case 'send-email':
- return RuleActionSendEmail::from($data);
+ return RuleActionSendEmail::from($data, $metadata);
case 'stop-subscriptions':
- return RuleActionStopSubscriptions::from($data);
+ return RuleActionStopSubscriptions::from($data, $metadata);
case 'tag-or-untag-customer':
- return RuleActionTagOrUntagCustomer::from($data);
+ return RuleActionTagOrUntagCustomer::from($data, $metadata);
case 'update-intuit-quickbooks-invoice':
- return RuleActionUpdateIntuitQuickbooksInvoice::from($data);
+ return RuleActionUpdateIntuitQuickbooksInvoice::from($data, $metadata);
case 'void-intuit-quickbooks-invoice':
- return RuleActionVoidIntuitQuickbooksInvoice::from($data);
+ return RuleActionVoidIntuitQuickbooksInvoice::from($data, $metadata);
}
throw new InvalidArgumentException("Unsupported name value: '{$data['name']}'");
diff --git a/src/Model/RuleActionAbandonScheduledPayments.php b/src/Model/RuleActionAbandonScheduledPayments.php
index 1a12e9e63..a9f536536 100644
--- a/src/Model/RuleActionAbandonScheduledPayments.php
+++ b/src/Model/RuleActionAbandonScheduledPayments.php
@@ -14,17 +14,22 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionAbandonScheduledPayments extends RuleAction
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'abandon-scheduled-payments',
- ] + $data);
+ ] + $data, $metadata);
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
}
diff --git a/src/Model/RuleActionAddBlockList.php b/src/Model/RuleActionAddBlockList.php
index 6c7a8c0a9..9643e6393 100644
--- a/src/Model/RuleActionAddBlockList.php
+++ b/src/Model/RuleActionAddBlockList.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionAddBlockList extends RuleAction
{
+ use HasMetadata;
+
public const TYPE_CUSTOMER_ID = 'customer-id';
public const TYPE_EMAIL = 'email';
@@ -28,11 +32,11 @@ class RuleActionAddBlockList extends RuleAction
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'blocklist',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -40,11 +44,12 @@ public function __construct(array $data = [])
if (array_key_exists('ttl', $data)) {
$this->setTtl($data['ttl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/RuleActionAddRiskScore.php b/src/Model/RuleActionAddRiskScore.php
index e1c3bc882..fd1bdaba3 100644
--- a/src/Model/RuleActionAddRiskScore.php
+++ b/src/Model/RuleActionAddRiskScore.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionAddRiskScore extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'add-risk-score',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('score', $data)) {
$this->setScore($data['score']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getScore(): ?int
diff --git a/src/Model/RuleActionAdjustReadyToPay.php b/src/Model/RuleActionAdjustReadyToPay.php
index d06cc7756..65c9f3ed0 100644
--- a/src/Model/RuleActionAdjustReadyToPay.php
+++ b/src/Model/RuleActionAdjustReadyToPay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionAdjustReadyToPay extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'adjust-ready-to-pay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('prioritizeActivePaymentInstruments', $data)) {
$this->setPrioritizeActivePaymentInstruments($data['prioritizeActivePaymentInstruments']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentMethods', $data)) {
$this->setPaymentMethods($data['paymentMethods']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrioritizeActivePaymentInstruments(): ?bool
diff --git a/src/Model/RuleActionAdjustReadyToPayout.php b/src/Model/RuleActionAdjustReadyToPayout.php
index c989f1847..5e4378512 100644
--- a/src/Model/RuleActionAdjustReadyToPayout.php
+++ b/src/Model/RuleActionAdjustReadyToPayout.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionAdjustReadyToPayout extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'adjust-ready-to-payout',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('prioritizeActivePaymentInstruments', $data)) {
$this->setPrioritizeActivePaymentInstruments($data['prioritizeActivePaymentInstruments']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentMethods', $data)) {
$this->setPaymentMethods($data['paymentMethods']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPrioritizeActivePaymentInstruments(): ?bool
diff --git a/src/Model/RuleActionCancelScheduledPayments.php b/src/Model/RuleActionCancelScheduledPayments.php
index 169a809b5..6fce8a0e2 100644
--- a/src/Model/RuleActionCancelScheduledPayments.php
+++ b/src/Model/RuleActionCancelScheduledPayments.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionCancelScheduledPayments extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'cancel-scheduled-payments',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('skipStartedServicePeriod', $data)) {
$this->setSkipStartedServicePeriod($data['skipStartedServicePeriod']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSkipStartedServicePeriod(): ?bool
diff --git a/src/Model/RuleActionCheckOntarioRestriction.php b/src/Model/RuleActionCheckOntarioRestriction.php
index f4cd9a3bd..8bd53463f 100644
--- a/src/Model/RuleActionCheckOntarioRestriction.php
+++ b/src/Model/RuleActionCheckOntarioRestriction.php
@@ -14,17 +14,22 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionCheckOntarioRestriction extends RuleAction
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'check-ontario-restriction',
- ] + $data);
+ ] + $data, $metadata);
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
}
diff --git a/src/Model/RuleActionCreateIntuitQuickbooksBalanceTransactionEntry.php b/src/Model/RuleActionCreateIntuitQuickbooksBalanceTransactionEntry.php
index caed4e0d6..376d6a7be 100644
--- a/src/Model/RuleActionCreateIntuitQuickbooksBalanceTransactionEntry.php
+++ b/src/Model/RuleActionCreateIntuitQuickbooksBalanceTransactionEntry.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionCreateIntuitQuickbooksBalanceTransactionEntry extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'create-intuit-quickbooks-balance-transaction-entry',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('debitAccount', $data)) {
$this->setDebitAccount($data['debitAccount']);
@@ -36,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('credentialHash', $data)) {
$this->setCredentialHash($data['credentialHash']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDebitAccount(): string
diff --git a/src/Model/RuleActionCreateIntuitQuickbooksInvoice.php b/src/Model/RuleActionCreateIntuitQuickbooksInvoice.php
index 08cce5ecb..f44489aed 100644
--- a/src/Model/RuleActionCreateIntuitQuickbooksInvoice.php
+++ b/src/Model/RuleActionCreateIntuitQuickbooksInvoice.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionCreateIntuitQuickbooksInvoice extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'create-intuit-quickbooks-invoice',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('unearnedRevenueAccount', $data)) {
$this->setUnearnedRevenueAccount($data['unearnedRevenueAccount']);
@@ -45,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('customerDisplayName', $data)) {
$this->setCustomerDisplayName($data['customerDisplayName']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUnearnedRevenueAccount(): string
diff --git a/src/Model/RuleActionCreateIntuitQuickbooksInvoiceTemplate.php b/src/Model/RuleActionCreateIntuitQuickbooksInvoiceTemplate.php
index 3307a1251..f410265b8 100644
--- a/src/Model/RuleActionCreateIntuitQuickbooksInvoiceTemplate.php
+++ b/src/Model/RuleActionCreateIntuitQuickbooksInvoiceTemplate.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleActionCreateIntuitQuickbooksInvoiceTemplate implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('itemName', $data)) {
$this->setItemName($data['itemName']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('taxLineDescription', $data)) {
$this->setTaxLineDescription($data['taxLineDescription']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getItemName(): ?string
diff --git a/src/Model/RuleActionCreateIntuitQuickbooksPayment.php b/src/Model/RuleActionCreateIntuitQuickbooksPayment.php
index 0894fd30e..eb199a2be 100644
--- a/src/Model/RuleActionCreateIntuitQuickbooksPayment.php
+++ b/src/Model/RuleActionCreateIntuitQuickbooksPayment.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionCreateIntuitQuickbooksPayment extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'create-intuit-quickbooks-payment',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('depositAccount', $data)) {
$this->setDepositAccount($data['depositAccount']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('credentialHash', $data)) {
$this->setCredentialHash($data['credentialHash']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDepositAccount(): string
diff --git a/src/Model/RuleActionCreateIntuitQuickbooksRefundReceipt.php b/src/Model/RuleActionCreateIntuitQuickbooksRefundReceipt.php
index f89f77b0c..57fc97230 100644
--- a/src/Model/RuleActionCreateIntuitQuickbooksRefundReceipt.php
+++ b/src/Model/RuleActionCreateIntuitQuickbooksRefundReceipt.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionCreateIntuitQuickbooksRefundReceipt extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'create-intuit-quickbooks-refund-receipt',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('depositAccount', $data)) {
$this->setDepositAccount($data['depositAccount']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('credentialHash', $data)) {
$this->setCredentialHash($data['credentialHash']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDepositAccount(): string
diff --git a/src/Model/RuleActionCreateIntuitQuickbooksRevenueRecognitionEntry.php b/src/Model/RuleActionCreateIntuitQuickbooksRevenueRecognitionEntry.php
index 5a5ebfdc4..7437c535a 100644
--- a/src/Model/RuleActionCreateIntuitQuickbooksRevenueRecognitionEntry.php
+++ b/src/Model/RuleActionCreateIntuitQuickbooksRevenueRecognitionEntry.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionCreateIntuitQuickbooksRevenueRecognitionEntry extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'create-intuit-quickbooks-revenue-recognition-entry',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('debitAccount', $data)) {
$this->setDebitAccount($data['debitAccount']);
@@ -36,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('credentialHash', $data)) {
$this->setCredentialHash($data['credentialHash']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDebitAccount(): string
diff --git a/src/Model/RuleActionDeclineTransaction.php b/src/Model/RuleActionDeclineTransaction.php
index 984846f94..65de52492 100644
--- a/src/Model/RuleActionDeclineTransaction.php
+++ b/src/Model/RuleActionDeclineTransaction.php
@@ -14,17 +14,22 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionDeclineTransaction extends RuleAction
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'decline-transaction',
- ] + $data);
+ ] + $data, $metadata);
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
}
diff --git a/src/Model/RuleActionDisplayOtherChoices.php b/src/Model/RuleActionDisplayOtherChoices.php
index 3a876175e..3287fdae2 100644
--- a/src/Model/RuleActionDisplayOtherChoices.php
+++ b/src/Model/RuleActionDisplayOtherChoices.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionDisplayOtherChoices extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'display-other-choices',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('choices', $data)) {
$this->setChoices($data['choices']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/RuleActionDisplayOtherChoicesChoices.php b/src/Model/RuleActionDisplayOtherChoicesChoices.php
index 3772f199e..2fe97266c 100644
--- a/src/Model/RuleActionDisplayOtherChoicesChoices.php
+++ b/src/Model/RuleActionDisplayOtherChoicesChoices.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleActionDisplayOtherChoicesChoices implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('langIso', $data)) {
$this->setLangIso($data['langIso']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('content', $data)) {
$this->setContent($data['content']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLangIso(): string
diff --git a/src/Model/RuleActionGuessPaymentCardExpiration.php b/src/Model/RuleActionGuessPaymentCardExpiration.php
index 6c1bbb427..522e00885 100644
--- a/src/Model/RuleActionGuessPaymentCardExpiration.php
+++ b/src/Model/RuleActionGuessPaymentCardExpiration.php
@@ -14,17 +14,22 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionGuessPaymentCardExpiration extends RuleAction
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'guess-payment-card-expiration',
- ] + $data);
+ ] + $data, $metadata);
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
}
diff --git a/src/Model/RuleActionPerformExperianCheck.php b/src/Model/RuleActionPerformExperianCheck.php
index c7a0f3785..d2c48fce6 100644
--- a/src/Model/RuleActionPerformExperianCheck.php
+++ b/src/Model/RuleActionPerformExperianCheck.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionPerformExperianCheck extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'perform-experian-check',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('experianCredentialHash', $data)) {
$this->setExperianCredentialHash($data['experianCredentialHash']);
@@ -36,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('tagOnUnknown', $data)) {
$this->setTagOnUnknown($data['tagOnUnknown']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getExperianCredentialHash(): string
diff --git a/src/Model/RuleActionPickGatewayAccount.php b/src/Model/RuleActionPickGatewayAccount.php
index 204385e4c..96751e1be 100644
--- a/src/Model/RuleActionPickGatewayAccount.php
+++ b/src/Model/RuleActionPickGatewayAccount.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionPickGatewayAccount extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'pick-gateway-account',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('pickInstruction', $data)) {
$this->setPickInstruction($data['pickInstruction']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPickInstruction(): GatewayAccountPickInstruction
diff --git a/src/Model/RuleActionRequestKyc.php b/src/Model/RuleActionRequestKyc.php
index b20ebea20..7001dc75c 100644
--- a/src/Model/RuleActionRequestKyc.php
+++ b/src/Model/RuleActionRequestKyc.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionRequestKyc extends RuleAction
{
+ use HasMetadata;
+
public const EXCLUDE_POLICY_CUSTOMERS_WITH_ACCEPTED_DOCUMENT = 'customers-with-accepted-document';
public const EXCLUDE_POLICY_CUSTOMERS_WITH_DOCUMENT = 'customers-with-document';
@@ -40,11 +44,11 @@ class RuleActionRequestKyc extends RuleAction
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'request-kyc',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('documents', $data)) {
$this->setDocuments($data['documents']);
@@ -76,11 +80,12 @@ public function __construct(array $data = [])
if (array_key_exists('bypassCurrencyToDisplay', $data)) {
$this->setBypassCurrencyToDisplay($data['bypassCurrencyToDisplay']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/RuleActionScheduleInvoiceRetry.php b/src/Model/RuleActionScheduleInvoiceRetry.php
index 0eaebd037..ea66a42f7 100644
--- a/src/Model/RuleActionScheduleInvoiceRetry.php
+++ b/src/Model/RuleActionScheduleInvoiceRetry.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionScheduleInvoiceRetry extends RuleAction
{
+ use HasMetadata;
+
public const AFTER_ATTEMPT_POLICIES_CHANGE_SUBSCRIPTION_RENEWAL_TIME = 'change-subscription-renewal-time';
public const AFTER_RETRY_END_POLICIES_ABANDON_INVOICE = 'abandon-invoice';
@@ -24,11 +28,11 @@ class RuleActionScheduleInvoiceRetry extends RuleAction
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'schedule-invoice-retry',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('attempts', $data)) {
$this->setAttempts($data['attempts']);
@@ -42,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('overrideRetryInstruction', $data)) {
$this->setOverrideRetryInstruction($data['overrideRetryInstruction']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/RuleActionScheduleInvoiceRetryAttempts.php b/src/Model/RuleActionScheduleInvoiceRetryAttempts.php
index 3e8101d48..0e4fe114b 100644
--- a/src/Model/RuleActionScheduleInvoiceRetryAttempts.php
+++ b/src/Model/RuleActionScheduleInvoiceRetryAttempts.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleActionScheduleInvoiceRetryAttempts implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('scheduleInstruction', $data)) {
$this->setScheduleInstruction($data['scheduleInstruction']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('tryBackupInstruments', $data)) {
$this->setTryBackupInstruments($data['tryBackupInstruments']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getScheduleInstruction(): InvoiceRetryScheduleInstruction
diff --git a/src/Model/RuleActionSchedulePayment.php b/src/Model/RuleActionSchedulePayment.php
index 5f61a4319..b1cb40731 100644
--- a/src/Model/RuleActionSchedulePayment.php
+++ b/src/Model/RuleActionSchedulePayment.php
@@ -14,17 +14,21 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionSchedulePayment extends RuleAction
{
+ use HasMetadata;
+
public const AMOUNT_POLICY_INVOICE_AMOUNT_DUE = 'invoice-amount-due';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'schedule-payment',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('scheduleInstruction', $data)) {
$this->setScheduleInstruction($data['scheduleInstruction']);
@@ -32,11 +36,12 @@ public function __construct(array $data = [])
if (array_key_exists('amountPolicy', $data)) {
$this->setAmountPolicy($data['amountPolicy']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getScheduleInstruction(): ScheduleInstruction
diff --git a/src/Model/RuleActionScheduleReminder.php b/src/Model/RuleActionScheduleReminder.php
index 0d5fca08e..a98fe7582 100644
--- a/src/Model/RuleActionScheduleReminder.php
+++ b/src/Model/RuleActionScheduleReminder.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionScheduleReminder extends RuleAction
{
+ use HasMetadata;
+
public const ROLE_ALL = 'all';
public const ROLE_RENEWAL = 'renewal';
@@ -24,11 +28,11 @@ class RuleActionScheduleReminder extends RuleAction
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'schedule-reminder',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('role', $data)) {
$this->setRole($data['role']);
@@ -36,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('schedule', $data)) {
$this->setSchedule($data['schedule']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRole(): string
diff --git a/src/Model/RuleActionScheduleReminderSchedule.php b/src/Model/RuleActionScheduleReminderSchedule.php
index 1876ec6e5..2e548171d 100644
--- a/src/Model/RuleActionScheduleReminderSchedule.php
+++ b/src/Model/RuleActionScheduleReminderSchedule.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleActionScheduleReminderSchedule implements JsonSerializable
{
+ use HasMetadata;
+
public const CHRONOLOGY_BEFORE = 'before';
public const CHRONOLOGY_AFTER = 'after';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('instructions', $data)) {
$this->setInstructions($data['instructions']);
@@ -32,11 +35,12 @@ public function __construct(array $data = [])
if (array_key_exists('chronology', $data)) {
$this->setChronology($data['chronology']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/RuleActionSendEmail.php b/src/Model/RuleActionSendEmail.php
index e827da95e..3b61bf78b 100644
--- a/src/Model/RuleActionSendEmail.php
+++ b/src/Model/RuleActionSendEmail.php
@@ -16,16 +16,19 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleActionSendEmail extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'send-email',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -39,11 +42,12 @@ public function __construct(array $data = [])
if (array_key_exists('splitTestStartTime', $data)) {
$this->setSplitTestStartTime($data['splitTestStartTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/RuleActionStopSubscriptions.php b/src/Model/RuleActionStopSubscriptions.php
index a07e48810..06428e5f7 100644
--- a/src/Model/RuleActionStopSubscriptions.php
+++ b/src/Model/RuleActionStopSubscriptions.php
@@ -14,17 +14,22 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionStopSubscriptions extends RuleAction
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'stop-subscriptions',
- ] + $data);
+ ] + $data, $metadata);
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
}
diff --git a/src/Model/RuleActionTagOrUntagCustomer.php b/src/Model/RuleActionTagOrUntagCustomer.php
index fc3e53912..0adce0795 100644
--- a/src/Model/RuleActionTagOrUntagCustomer.php
+++ b/src/Model/RuleActionTagOrUntagCustomer.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionTagOrUntagCustomer extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'tag-or-untag-customer',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('addingTags', $data)) {
$this->setAddingTags($data['addingTags']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('removingTags', $data)) {
$this->setRemovingTags($data['removingTags']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/RuleActionUpdateIntuitQuickbooksInvoice.php b/src/Model/RuleActionUpdateIntuitQuickbooksInvoice.php
index 6930fdef6..7e2c54382 100644
--- a/src/Model/RuleActionUpdateIntuitQuickbooksInvoice.php
+++ b/src/Model/RuleActionUpdateIntuitQuickbooksInvoice.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionUpdateIntuitQuickbooksInvoice extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'update-intuit-quickbooks-invoice',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('unearnedRevenueAccount', $data)) {
$this->setUnearnedRevenueAccount($data['unearnedRevenueAccount']);
@@ -42,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('credentialHash', $data)) {
$this->setCredentialHash($data['credentialHash']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUnearnedRevenueAccount(): string
diff --git a/src/Model/RuleActionUpdateIntuitQuickbooksInvoiceTemplate.php b/src/Model/RuleActionUpdateIntuitQuickbooksInvoiceTemplate.php
index 4bcb35372..5dc9ea32b 100644
--- a/src/Model/RuleActionUpdateIntuitQuickbooksInvoiceTemplate.php
+++ b/src/Model/RuleActionUpdateIntuitQuickbooksInvoiceTemplate.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleActionUpdateIntuitQuickbooksInvoiceTemplate implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('itemName', $data)) {
$this->setItemName($data['itemName']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('taxLineDescription', $data)) {
$this->setTaxLineDescription($data['taxLineDescription']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getItemName(): ?string
diff --git a/src/Model/RuleActionVoidIntuitQuickbooksInvoice.php b/src/Model/RuleActionVoidIntuitQuickbooksInvoice.php
index ace988587..b888e45e1 100644
--- a/src/Model/RuleActionVoidIntuitQuickbooksInvoice.php
+++ b/src/Model/RuleActionVoidIntuitQuickbooksInvoice.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RuleActionVoidIntuitQuickbooksInvoice extends RuleAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'name' => 'void-intuit-quickbooks-invoice',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentialHash', $data)) {
$this->setCredentialHash($data['credentialHash']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentialHash(): string
diff --git a/src/Model/RuleSet.php b/src/Model/RuleSet.php
index 6b63f2db1..c1ee908e9 100644
--- a/src/Model/RuleSet.php
+++ b/src/Model/RuleSet.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleSet implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('version', $data)) {
$this->setVersion($data['version']);
@@ -42,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getVersion(): ?int
diff --git a/src/Model/RuleSetDraft.php b/src/Model/RuleSetDraft.php
index e14f2d779..7ad83443d 100644
--- a/src/Model/RuleSetDraft.php
+++ b/src/Model/RuleSetDraft.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleSetDraft implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -54,11 +57,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/RuleSetDraftAuthor.php b/src/Model/RuleSetDraftAuthor.php
index 39e22d07e..733b4bdee 100644
--- a/src/Model/RuleSetDraftAuthor.php
+++ b/src/Model/RuleSetDraftAuthor.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleSetDraftAuthor implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/RuleSetHistoryItem.php b/src/Model/RuleSetHistoryItem.php
index 70c67936b..3017e746e 100644
--- a/src/Model/RuleSetHistoryItem.php
+++ b/src/Model/RuleSetHistoryItem.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleSetHistoryItem implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('version', $data)) {
$this->setVersion($data['version']);
@@ -36,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getVersion(): ?int
diff --git a/src/Model/RuleSetVersion.php b/src/Model/RuleSetVersion.php
index eb3af36a6..157ce160d 100644
--- a/src/Model/RuleSetVersion.php
+++ b/src/Model/RuleSetVersion.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RuleSetVersion implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('version', $data)) {
$this->setVersion($data['version']);
@@ -42,11 +45,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getVersion(): ?int
diff --git a/src/Model/RulesEmailNotification.php b/src/Model/RulesEmailNotification.php
index ef93e871a..8b20d7769 100644
--- a/src/Model/RulesEmailNotification.php
+++ b/src/Model/RulesEmailNotification.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RulesEmailNotification implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('templates', $data)) {
$this->setTemplates($data['templates']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/RulesEmailNotificationTemplates.php b/src/Model/RulesEmailNotificationTemplates.php
index a89734160..f4e70903d 100644
--- a/src/Model/RulesEmailNotificationTemplates.php
+++ b/src/Model/RulesEmailNotificationTemplates.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RulesEmailNotificationTemplates implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('locale', $data)) {
$this->setLocale($data['locale']);
@@ -52,11 +55,12 @@ public function __construct(array $data = [])
if (array_key_exists('attachments', $data)) {
$this->setAttachments($data['attachments']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getLocale(): string
diff --git a/src/Model/RulesEmailNotificationTemplatesAttachments.php b/src/Model/RulesEmailNotificationTemplatesAttachments.php
index 0851f74bc..1b81303d5 100644
--- a/src/Model/RulesEmailNotificationTemplatesAttachments.php
+++ b/src/Model/RulesEmailNotificationTemplatesAttachments.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RulesEmailNotificationTemplatesAttachments implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('resourceType', $data)) {
$this->setResourceType($data['resourceType']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('resourceId', $data)) {
$this->setResourceId($data['resourceId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResourceType(): string
diff --git a/src/Model/RulesEngineTimeline.php b/src/Model/RulesEngineTimeline.php
index 0dcebfa46..ed171c9da 100644
--- a/src/Model/RulesEngineTimeline.php
+++ b/src/Model/RulesEngineTimeline.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class RulesEngineTimeline implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_TIMELINE_COMMENT_CREATED = 'timeline-comment-created';
public const TYPE_RULESET_CREATED = 'ruleset-created';
@@ -34,7 +37,7 @@ class RulesEngineTimeline implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -57,11 +60,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/RulesetRestoreTimelineAction.php b/src/Model/RulesetRestoreTimelineAction.php
index b19e50e8e..1203b6476 100644
--- a/src/Model/RulesetRestoreTimelineAction.php
+++ b/src/Model/RulesetRestoreTimelineAction.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class RulesetRestoreTimelineAction implements TimelineAction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('version', $data)) {
$this->setVersion($data['version']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAction(): string
diff --git a/src/Model/SESCredential.php b/src/Model/SESCredential.php
index a38a80616..2b60311dc 100644
--- a/src/Model/SESCredential.php
+++ b/src/Model/SESCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class SESCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -27,7 +30,7 @@ class SESCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/SMSVoucher.php b/src/Model/SMSVoucher.php
index f8089df77..1b812bbdf 100644
--- a/src/Model/SMSVoucher.php
+++ b/src/Model/SMSVoucher.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SMSVoucher extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'SMSVoucher',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SMSVoucherCredentials
diff --git a/src/Model/SMSVoucherCredentials.php b/src/Model/SMSVoucherCredentials.php
index 8496db16e..d25d20531 100644
--- a/src/Model/SMSVoucherCredentials.php
+++ b/src/Model/SMSVoucherCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SMSVoucherCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('AppId', $data)) {
$this->setAppId($data['AppId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAppId(): string
diff --git a/src/Model/STPMexico.php b/src/Model/STPMexico.php
index c14920b49..e0612a82e 100644
--- a/src/Model/STPMexico.php
+++ b/src/Model/STPMexico.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class STPMexico extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'STPMexico',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): STPMexicoCredentials
diff --git a/src/Model/STPMexicoCredentials.php b/src/Model/STPMexicoCredentials.php
index ab5e1c177..6ae2ad934 100644
--- a/src/Model/STPMexicoCredentials.php
+++ b/src/Model/STPMexicoCredentials.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class STPMexicoCredentials implements JsonSerializable
{
+ use HasMetadata;
+
public const BANK_ID_37006 = '37006';
public const BANK_ID_37009 = '37009';
@@ -220,7 +223,7 @@ class STPMexicoCredentials implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('companyName', $data)) {
$this->setCompanyName($data['companyName']);
@@ -240,11 +243,12 @@ public function __construct(array $data = [])
if (array_key_exists('keyPassphrase', $data)) {
$this->setKeyPassphrase($data['keyPassphrase']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCompanyName(): string
diff --git a/src/Model/Safecharge.php b/src/Model/Safecharge.php
index 0274ddc65..608c8d6c7 100644
--- a/src/Model/Safecharge.php
+++ b/src/Model/Safecharge.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Safecharge extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Safecharge',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SafechargeCredentials
diff --git a/src/Model/SafechargeCredentials.php b/src/Model/SafechargeCredentials.php
index cadc6d0a5..602a9e3e4 100644
--- a/src/Model/SafechargeCredentials.php
+++ b/src/Model/SafechargeCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SafechargeCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Sagepay.php b/src/Model/Sagepay.php
index 8ee4eb7bc..0b2aee4f6 100644
--- a/src/Model/Sagepay.php
+++ b/src/Model/Sagepay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Sagepay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Sagepay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SagepayCredentials
diff --git a/src/Model/SagepayCredentials.php b/src/Model/SagepayCredentials.php
index 1bfd8fab1..f6f397021 100644
--- a/src/Model/SagepayCredentials.php
+++ b/src/Model/SagepayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SagepayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('M_ID', $data)) {
$this->setMID($data['M_ID']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('M_KEY', $data)) {
$this->setMKEY($data['M_KEY']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMID(): string
diff --git a/src/Model/SaltarPay.php b/src/Model/SaltarPay.php
index 7572c82c4..072ce6ea5 100644
--- a/src/Model/SaltarPay.php
+++ b/src/Model/SaltarPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SaltarPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'SaltarPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SaltarPayCredentials
diff --git a/src/Model/SaltarPayCredentials.php b/src/Model/SaltarPayCredentials.php
index 18e15e775..8a9b3aae0 100644
--- a/src/Model/SaltarPayCredentials.php
+++ b/src/Model/SaltarPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SaltarPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/SamsungPayFeature.php b/src/Model/SamsungPayFeature.php
index 477720255..f7044df49 100644
--- a/src/Model/SamsungPayFeature.php
+++ b/src/Model/SamsungPayFeature.php
@@ -14,20 +14,25 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SamsungPayFeature implements PaymentCardFeature
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantName', $data)) {
$this->setMerchantName($data['merchantName']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/ScheduleInstructionFactory.php b/src/Model/ScheduleInstructionFactory.php
index 97c1e37c3..93f2549f4 100644
--- a/src/Model/ScheduleInstructionFactory.php
+++ b/src/Model/ScheduleInstructionFactory.php
@@ -18,16 +18,16 @@
class ScheduleInstructionFactory
{
- public static function from(array $data = []): ScheduleInstruction
+ public static function from(array $data = [], array $metadata = []): ScheduleInstruction
{
return match ($data['method']) {
- 'auto' => SchedulingMethodAuto::from($data),
- 'date-interval' => SchedulingMethodDateInterval::from($data),
- 'day-and-month-of-year' => SchedulingMethodDayAndMonthOfYear::from($data),
- 'day-of-month' => SchedulingMethodDayOfMonth::from($data),
- 'day-of-week' => SchedulingMethodDayOfWeek::from($data),
- 'immediately' => SchedulingMethodImmediately::from($data),
- 'intelligent' => SchedulingMethodIntelligent::from($data),
+ 'auto' => SchedulingMethodAuto::from($data, $metadata),
+ 'date-interval' => SchedulingMethodDateInterval::from($data, $metadata),
+ 'day-and-month-of-year' => SchedulingMethodDayAndMonthOfYear::from($data, $metadata),
+ 'day-of-month' => SchedulingMethodDayOfMonth::from($data, $metadata),
+ 'day-of-week' => SchedulingMethodDayOfWeek::from($data, $metadata),
+ 'immediately' => SchedulingMethodImmediately::from($data, $metadata),
+ 'intelligent' => SchedulingMethodIntelligent::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/SchedulingMethodAuto.php b/src/Model/SchedulingMethodAuto.php
index 224a4117e..bdb00949d 100644
--- a/src/Model/SchedulingMethodAuto.php
+++ b/src/Model/SchedulingMethodAuto.php
@@ -14,15 +14,20 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SchedulingMethodAuto implements ScheduleInstruction
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/SchedulingMethodDateInterval.php b/src/Model/SchedulingMethodDateInterval.php
index 5c2de8c87..7244b5578 100644
--- a/src/Model/SchedulingMethodDateInterval.php
+++ b/src/Model/SchedulingMethodDateInterval.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SchedulingMethodDateInterval implements InvoiceRetryScheduleInstruction, SettlementPeriod, ScheduleInstruction, ReminderScheduleInstruction
{
+ use HasMetadata;
+
public const UNIT_SECOND = 'second';
public const UNIT_MINUTE = 'minute';
@@ -42,7 +46,7 @@ class SchedulingMethodDateInterval implements InvoiceRetryScheduleInstruction, S
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('duration', $data)) {
$this->setDuration($data['duration']);
@@ -53,11 +57,12 @@ public function __construct(array $data = [])
if (array_key_exists('anchor', $data)) {
$this->setAnchor($data['anchor']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/SchedulingMethodDayAndMonthOfYear.php b/src/Model/SchedulingMethodDayAndMonthOfYear.php
index cf8f1cd0b..ebf65ca76 100644
--- a/src/Model/SchedulingMethodDayAndMonthOfYear.php
+++ b/src/Model/SchedulingMethodDayAndMonthOfYear.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SchedulingMethodDayAndMonthOfYear implements ServicePeriodAnchorInstruction, ScheduleInstruction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('day', $data)) {
$this->setDay($data['day']);
@@ -29,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('time', $data)) {
$this->setTime($data['time']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/SchedulingMethodDayOfMonth.php b/src/Model/SchedulingMethodDayOfMonth.php
index 7408c945f..e79a0a388 100644
--- a/src/Model/SchedulingMethodDayOfMonth.php
+++ b/src/Model/SchedulingMethodDayOfMonth.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SchedulingMethodDayOfMonth implements ServicePeriodAnchorInstruction, InvoiceRetryScheduleInstruction, PeriodAnchor, ScheduleInstruction, ReminderScheduleInstruction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('day', $data)) {
$this->setDay($data['day']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('time', $data)) {
$this->setTime($data['time']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/SchedulingMethodDayOfWeek.php b/src/Model/SchedulingMethodDayOfWeek.php
index cad1b0e65..2a28c9eb8 100644
--- a/src/Model/SchedulingMethodDayOfWeek.php
+++ b/src/Model/SchedulingMethodDayOfWeek.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SchedulingMethodDayOfWeek implements ServicePeriodAnchorInstruction, InvoiceRetryScheduleInstruction, PeriodAnchor, ScheduleInstruction, ReminderScheduleInstruction
{
+ use HasMetadata;
+
public const DAY_SUNDAY = 'Sunday';
public const DAY_MONDAY = 'Monday';
@@ -38,7 +42,7 @@ class SchedulingMethodDayOfWeek implements ServicePeriodAnchorInstruction, Invoi
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('day', $data)) {
$this->setDay($data['day']);
@@ -49,11 +53,12 @@ public function __construct(array $data = [])
if (array_key_exists('time', $data)) {
$this->setTime($data['time']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/SchedulingMethodImmediately.php b/src/Model/SchedulingMethodImmediately.php
index ae90b3ae9..eeb3596a3 100644
--- a/src/Model/SchedulingMethodImmediately.php
+++ b/src/Model/SchedulingMethodImmediately.php
@@ -14,15 +14,20 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SchedulingMethodImmediately implements InvoiceRetryScheduleInstruction, SettlementPeriod, ScheduleInstruction
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/SchedulingMethodIntelligent.php b/src/Model/SchedulingMethodIntelligent.php
index e4c80c6f2..4691f6a51 100644
--- a/src/Model/SchedulingMethodIntelligent.php
+++ b/src/Model/SchedulingMethodIntelligent.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SchedulingMethodIntelligent implements InvoiceRetryScheduleInstruction, ScheduleInstruction
{
+ use HasMetadata;
+
public const UNIT_SECOND = 'second';
public const UNIT_MINUTE = 'minute';
@@ -42,7 +46,7 @@ class SchedulingMethodIntelligent implements InvoiceRetryScheduleInstruction, Sc
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('duration', $data)) {
$this->setDuration($data['duration']);
@@ -50,11 +54,12 @@ public function __construct(array $data = [])
if (array_key_exists('unit', $data)) {
$this->setUnit($data['unit']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/SeamlessChex.php b/src/Model/SeamlessChex.php
index 26fdc2a4d..0efb98e3f 100644
--- a/src/Model/SeamlessChex.php
+++ b/src/Model/SeamlessChex.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SeamlessChex extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'SeamlessChex',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SeamlessChexCredentials
diff --git a/src/Model/SeamlessChexCredentials.php b/src/Model/SeamlessChexCredentials.php
index c1e2e1de9..f0f564bfb 100644
--- a/src/Model/SeamlessChexCredentials.php
+++ b/src/Model/SeamlessChexCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SeamlessChexCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublicKey(): string
diff --git a/src/Model/Search.php b/src/Model/Search.php
index cc3331319..1fe10ff5b 100644
--- a/src/Model/Search.php
+++ b/src/Model/Search.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Search implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customers', $data)) {
$this->setCustomers($data['customers']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('searched', $data)) {
$this->setSearched($data['searched']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/SecureTrading.php b/src/Model/SecureTrading.php
index 30c03ed3c..e2bfd86e4 100644
--- a/src/Model/SecureTrading.php
+++ b/src/Model/SecureTrading.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SecureTrading extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'SecureTrading',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SecureTradingCredentials
diff --git a/src/Model/SecureTradingCredentials.php b/src/Model/SecureTradingCredentials.php
index 58aa79641..efac3e54b 100644
--- a/src/Model/SecureTradingCredentials.php
+++ b/src/Model/SecureTradingCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SecureTradingCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('websiteId', $data)) {
$this->setWebsiteId($data['websiteId']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('notificationPassword', $data)) {
$this->setNotificationPassword($data['notificationPassword']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getWebsiteId(): string
diff --git a/src/Model/SecureTradingSettings.php b/src/Model/SecureTradingSettings.php
index e20c17913..37a27d4f9 100644
--- a/src/Model/SecureTradingSettings.php
+++ b/src/Model/SecureTradingSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SecureTradingSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('enableRecurring', $data)) {
$this->setEnableRecurring($data['enableRecurring']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('useParentTransactionOnFile', $data)) {
$this->setUseParentTransactionOnFile($data['useParentTransactionOnFile']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEnableRecurring(): ?bool
diff --git a/src/Model/SecurionPay.php b/src/Model/SecurionPay.php
index 1cf13c9f2..b4b8b58a1 100644
--- a/src/Model/SecurionPay.php
+++ b/src/Model/SecurionPay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SecurionPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'SecurionPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SecurionPayCredentials
diff --git a/src/Model/SecurionPayCredentials.php b/src/Model/SecurionPayCredentials.php
index 9ea3030b5..5dedfdc97 100644
--- a/src/Model/SecurionPayCredentials.php
+++ b/src/Model/SecurionPayCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SecurionPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('secretApiKey', $data)) {
$this->setSecretApiKey($data['secretApiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSecretApiKey(): string
diff --git a/src/Model/SellFeeTransaction.php b/src/Model/SellFeeTransaction.php
index 31b2ab603..8b638264d 100644
--- a/src/Model/SellFeeTransaction.php
+++ b/src/Model/SellFeeTransaction.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class SellFeeTransaction implements BalanceTransaction
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -56,11 +59,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/SellFeeTransactionFee.php b/src/Model/SellFeeTransactionFee.php
index e4fef2096..884ee09a8 100644
--- a/src/Model/SellFeeTransactionFee.php
+++ b/src/Model/SellFeeTransactionFee.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SellFeeTransactionFee implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): ?string
diff --git a/src/Model/SendGridCredential.php b/src/Model/SendGridCredential.php
index 69818bc71..38166cf52 100644
--- a/src/Model/SendGridCredential.php
+++ b/src/Model/SendGridCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class SendGridCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -27,7 +30,7 @@ class SendGridCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/SendThroughAttribution.php b/src/Model/SendThroughAttribution.php
index ab57c1deb..d1c4255d3 100644
--- a/src/Model/SendThroughAttribution.php
+++ b/src/Model/SendThroughAttribution.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SendThroughAttribution implements JsonSerializable
{
+ use HasMetadata;
+
public const EVENT_TYPE_ACCOUNT_PASSWORD_RESET_REQUESTED = 'account-password-reset-requested';
public const EVENT_TYPE_ACCOUNT_VERIFICATION_REQUESTED = 'account-verification-requested';
@@ -212,7 +215,7 @@ class SendThroughAttribution implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('eventType', $data)) {
$this->setEventType($data['eventType']);
@@ -229,11 +232,12 @@ public function __construct(array $data = [])
if (array_key_exists('goal', $data)) {
$this->setGoal($data['goal']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEventType(): ?string
diff --git a/src/Model/ServiceCredentialFactory.php b/src/Model/ServiceCredentialFactory.php
index c0c1a6841..86a721ea0 100644
--- a/src/Model/ServiceCredentialFactory.php
+++ b/src/Model/ServiceCredentialFactory.php
@@ -18,20 +18,20 @@
class ServiceCredentialFactory
{
- public static function from(array $data = []): ServiceCredential
+ public static function from(array $data = [], array $metadata = []): ServiceCredential
{
return match ($data['type']) {
- 'avalara' => AvalaraCredential::from($data),
- 'experian' => ExperianCredential::from($data),
- 'mailgun' => MailgunCredential::from($data),
- 'oauth2' => OAuth2Credential::from($data),
- 'plaid' => PlaidCredential::from($data),
- 'postmark' => PostmarkCredential::from($data),
- 'sendgrid' => SendGridCredential::from($data),
- 'aws-ses' => SESCredential::from($data),
- 'smtp' => SmtpCredential::from($data),
- 'taxjar' => TaxJarCredential::from($data),
- 'webhook' => WebhookCredential::from($data),
+ 'avalara' => AvalaraCredential::from($data, $metadata),
+ 'experian' => ExperianCredential::from($data, $metadata),
+ 'mailgun' => MailgunCredential::from($data, $metadata),
+ 'oauth2' => OAuth2Credential::from($data, $metadata),
+ 'plaid' => PlaidCredential::from($data, $metadata),
+ 'postmark' => PostmarkCredential::from($data, $metadata),
+ 'sendgrid' => SendGridCredential::from($data, $metadata),
+ 'aws-ses' => SESCredential::from($data, $metadata),
+ 'smtp' => SmtpCredential::from($data, $metadata),
+ 'taxjar' => TaxJarCredential::from($data, $metadata),
+ 'webhook' => WebhookCredential::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/ServicePeriodAnchorInstructionFactory.php b/src/Model/ServicePeriodAnchorInstructionFactory.php
index 2396c7acd..bba4b1472 100644
--- a/src/Model/ServicePeriodAnchorInstructionFactory.php
+++ b/src/Model/ServicePeriodAnchorInstructionFactory.php
@@ -18,12 +18,12 @@
class ServicePeriodAnchorInstructionFactory
{
- public static function from(array $data = []): ServicePeriodAnchorInstruction
+ public static function from(array $data = [], array $metadata = []): ServicePeriodAnchorInstruction
{
return match ($data['method']) {
- 'day-and-month-of-year' => SchedulingMethodDayAndMonthOfYear::from($data),
- 'day-of-month' => SchedulingMethodDayOfMonth::from($data),
- 'day-of-week' => SchedulingMethodDayOfWeek::from($data),
+ 'day-and-month-of-year' => SchedulingMethodDayAndMonthOfYear::from($data, $metadata),
+ 'day-of-month' => SchedulingMethodDayOfMonth::from($data, $metadata),
+ 'day-of-week' => SchedulingMethodDayOfWeek::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/Session.php b/src/Model/Session.php
index ea6c80145..73be09e90 100644
--- a/src/Model/Session.php
+++ b/src/Model/Session.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Session implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -48,11 +51,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/SettlementPeriodFactory.php b/src/Model/SettlementPeriodFactory.php
index 6461a34a8..61dd4cad7 100644
--- a/src/Model/SettlementPeriodFactory.php
+++ b/src/Model/SettlementPeriodFactory.php
@@ -18,11 +18,11 @@
class SettlementPeriodFactory
{
- public static function from(array $data = []): SettlementPeriod
+ public static function from(array $data = [], array $metadata = []): SettlementPeriod
{
return match ($data['method']) {
- 'date-interval' => SchedulingMethodDateInterval::from($data),
- 'immediately' => SchedulingMethodImmediately::from($data),
+ 'date-interval' => SchedulingMethodDateInterval::from($data, $metadata),
+ 'immediately' => SchedulingMethodImmediately::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/SettlementSettings.php b/src/Model/SettlementSettings.php
index 2bf1fe39a..7fe6e4750 100644
--- a/src/Model/SettlementSettings.php
+++ b/src/Model/SettlementSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SettlementSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('settlementCurrency', $data)) {
$this->setSettlementCurrency($data['settlementCurrency']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('advancedSettings', $data)) {
$this->setAdvancedSettings($data['advancedSettings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSettlementCurrency(): string
diff --git a/src/Model/SettlementSettingsAdvancedSettings.php b/src/Model/SettlementSettingsAdvancedSettings.php
index 5b57b29cc..b1530321f 100644
--- a/src/Model/SettlementSettingsAdvancedSettings.php
+++ b/src/Model/SettlementSettingsAdvancedSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SettlementSettingsAdvancedSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('filter', $data)) {
$this->setFilter($data['filter']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settlementPeriod', $data)) {
$this->setSettlementPeriod($data['settlementPeriod']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFilter(): string
diff --git a/src/Model/ShippingFactory.php b/src/Model/ShippingFactory.php
index dd4febc2f..132f14691 100644
--- a/src/Model/ShippingFactory.php
+++ b/src/Model/ShippingFactory.php
@@ -18,11 +18,11 @@
class ShippingFactory
{
- public static function from(array $data = []): Shipping
+ public static function from(array $data = [], array $metadata = []): Shipping
{
return match ($data['calculator']) {
- 'manual' => ManualShipping::from($data),
- 'rebilly' => RebillyShipping::from($data),
+ 'manual' => ManualShipping::from($data, $metadata),
+ 'rebilly' => RebillyShipping::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/ShippingOption.php b/src/Model/ShippingOption.php
index 43d0726c6..db239b39c 100644
--- a/src/Model/ShippingOption.php
+++ b/src/Model/ShippingOption.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ShippingOption implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/ShippingRate.php b/src/Model/ShippingRate.php
index 6065d229e..f682534f4 100644
--- a/src/Model/ShippingRate.php
+++ b/src/Model/ShippingRate.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ShippingRate implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -58,11 +61,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/ShowEddSearchLogsTimelineAction.php b/src/Model/ShowEddSearchLogsTimelineAction.php
index 7a71775d9..23da570b0 100644
--- a/src/Model/ShowEddSearchLogsTimelineAction.php
+++ b/src/Model/ShowEddSearchLogsTimelineAction.php
@@ -14,8 +14,12 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ShowEddSearchLogsTimelineAction implements TimelineAction
{
+ use HasMetadata;
+
public const TYPE_ARREST = 'arrest';
public const TYPE_BANKRUPTCY = 'bankruptcy';
@@ -26,7 +30,7 @@ class ShowEddSearchLogsTimelineAction implements TimelineAction
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('searchLogId', $data)) {
$this->setSearchLogId($data['searchLogId']);
@@ -34,11 +38,12 @@ public function __construct(array $data = [])
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAction(): string
diff --git a/src/Model/Skrill.php b/src/Model/Skrill.php
index ffd198584..e214b67e1 100644
--- a/src/Model/Skrill.php
+++ b/src/Model/Skrill.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Skrill extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Skrill',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SkrillCredentials
diff --git a/src/Model/SkrillCredentials.php b/src/Model/SkrillCredentials.php
index 07165323c..53d3ac0dd 100644
--- a/src/Model/SkrillCredentials.php
+++ b/src/Model/SkrillCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SkrillCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('accountEmail', $data)) {
$this->setAccountEmail($data['accountEmail']);
@@ -34,11 +37,15 @@ public function __construct(array $data = [])
if (array_key_exists('currencyAccountIds', $data)) {
$this->setCurrencyAccountIds($data['currencyAccountIds']);
}
+ if (array_key_exists('merchantId', $data)) {
+ $this->setMerchantId($data['merchantId']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAccountEmail(): string
@@ -89,6 +96,18 @@ public function setCurrencyAccountIds(null|string $currencyAccountIds): static
return $this;
}
+ public function getMerchantId(): ?string
+ {
+ return $this->fields['merchantId'] ?? null;
+ }
+
+ public function setMerchantId(null|string $merchantId): static
+ {
+ $this->fields['merchantId'] = $merchantId;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
@@ -104,6 +123,9 @@ public function jsonSerialize(): array
if (array_key_exists('currencyAccountIds', $this->fields)) {
$data['currencyAccountIds'] = $this->fields['currencyAccountIds'];
}
+ if (array_key_exists('merchantId', $this->fields)) {
+ $data['merchantId'] = $this->fields['merchantId'];
+ }
return $data;
}
diff --git a/src/Model/SkrillSettings.php b/src/Model/SkrillSettings.php
index c2ec5d743..d53d1a6e7 100644
--- a/src/Model/SkrillSettings.php
+++ b/src/Model/SkrillSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SkrillSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantFields', $data)) {
$this->setMerchantFields($data['merchantFields']);
@@ -28,11 +31,15 @@ public function __construct(array $data = [])
if (array_key_exists('useSPX', $data)) {
$this->setUseSPX($data['useSPX']);
}
+ if (array_key_exists('enableCustomerVerification', $data)) {
+ $this->setEnableCustomerVerification($data['enableCustomerVerification']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantFields(): ?string
@@ -59,6 +66,18 @@ public function setUseSPX(null|bool $useSPX): static
return $this;
}
+ public function getEnableCustomerVerification(): ?bool
+ {
+ return $this->fields['enableCustomerVerification'] ?? null;
+ }
+
+ public function setEnableCustomerVerification(null|bool $enableCustomerVerification): static
+ {
+ $this->fields['enableCustomerVerification'] = $enableCustomerVerification;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
@@ -68,6 +87,9 @@ public function jsonSerialize(): array
if (array_key_exists('useSPX', $this->fields)) {
$data['useSPX'] = $this->fields['useSPX'];
}
+ if (array_key_exists('enableCustomerVerification', $this->fields)) {
+ $data['enableCustomerVerification'] = $this->fields['enableCustomerVerification'];
+ }
return $data;
}
diff --git a/src/Model/SmartInvoice.php b/src/Model/SmartInvoice.php
index f6c0a777a..6d556d42b 100644
--- a/src/Model/SmartInvoice.php
+++ b/src/Model/SmartInvoice.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SmartInvoice extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'SmartInvoice',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SmartInvoiceCredentials
diff --git a/src/Model/SmartInvoiceCredentials.php b/src/Model/SmartInvoiceCredentials.php
index 70dde8177..9019928dc 100644
--- a/src/Model/SmartInvoiceCredentials.php
+++ b/src/Model/SmartInvoiceCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SmartInvoiceCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('applicationId', $data)) {
$this->setApplicationId($data['applicationId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/SmtpAuthorizationCramMd5.php b/src/Model/SmtpAuthorizationCramMd5.php
index 48e74a379..baf9d6c6a 100644
--- a/src/Model/SmtpAuthorizationCramMd5.php
+++ b/src/Model/SmtpAuthorizationCramMd5.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SmtpAuthorizationCramMd5 implements SmtpAuthorization
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/SmtpAuthorizationFactory.php b/src/Model/SmtpAuthorizationFactory.php
index 80f16c147..28e6a66f1 100644
--- a/src/Model/SmtpAuthorizationFactory.php
+++ b/src/Model/SmtpAuthorizationFactory.php
@@ -18,13 +18,13 @@
class SmtpAuthorizationFactory
{
- public static function from(array $data = []): SmtpAuthorization
+ public static function from(array $data = [], array $metadata = []): SmtpAuthorization
{
return match ($data['type']) {
- 'cram-md5' => SmtpAuthorizationCramMd5::from($data),
- 'login' => SmtpAuthorizationLogin::from($data),
- 'none' => SmtpAuthorizationNone::from($data),
- 'plain' => SmtpAuthorizationPlain::from($data),
+ 'cram-md5' => SmtpAuthorizationCramMd5::from($data, $metadata),
+ 'login' => SmtpAuthorizationLogin::from($data, $metadata),
+ 'none' => SmtpAuthorizationNone::from($data, $metadata),
+ 'plain' => SmtpAuthorizationPlain::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/SmtpAuthorizationLogin.php b/src/Model/SmtpAuthorizationLogin.php
index d285d3b7a..23020ceb3 100644
--- a/src/Model/SmtpAuthorizationLogin.php
+++ b/src/Model/SmtpAuthorizationLogin.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SmtpAuthorizationLogin implements SmtpAuthorization
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/SmtpAuthorizationNone.php b/src/Model/SmtpAuthorizationNone.php
index 6c1104e39..c79d062a9 100644
--- a/src/Model/SmtpAuthorizationNone.php
+++ b/src/Model/SmtpAuthorizationNone.php
@@ -14,15 +14,20 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SmtpAuthorizationNone implements SmtpAuthorization
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/SmtpAuthorizationPlain.php b/src/Model/SmtpAuthorizationPlain.php
index 632739c50..56ae60a62 100644
--- a/src/Model/SmtpAuthorizationPlain.php
+++ b/src/Model/SmtpAuthorizationPlain.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SmtpAuthorizationPlain implements SmtpAuthorization
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/SmtpCredential.php b/src/Model/SmtpCredential.php
index c3ff1456b..9b84ebd2c 100644
--- a/src/Model/SmtpCredential.php
+++ b/src/Model/SmtpCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class SmtpCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -33,7 +36,7 @@ class SmtpCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -62,11 +65,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/Sofort.php b/src/Model/Sofort.php
index a5aad643b..430317fbb 100644
--- a/src/Model/Sofort.php
+++ b/src/Model/Sofort.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Sofort extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Sofort',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SofortCredentials
diff --git a/src/Model/SofortCredentials.php b/src/Model/SofortCredentials.php
index 7559e1cf9..bc14f550a 100644
--- a/src/Model/SofortCredentials.php
+++ b/src/Model/SofortCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SofortCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('configKey', $data)) {
$this->setConfigKey($data['configKey']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('nuaPayAccountId', $data)) {
$this->setNuaPayAccountId($data['nuaPayAccountId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getConfigKey(): string
diff --git a/src/Model/SparkPay.php b/src/Model/SparkPay.php
index 03ac2eb2d..dd0298c56 100644
--- a/src/Model/SparkPay.php
+++ b/src/Model/SparkPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class SparkPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'SparkPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SparkPayCredentials
diff --git a/src/Model/SparkPayCredentials.php b/src/Model/SparkPayCredentials.php
index c44142897..69a776b93 100644
--- a/src/Model/SparkPayCredentials.php
+++ b/src/Model/SparkPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SparkPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('shopId', $data)) {
$this->setShopId($data['shopId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getShopId(): string
diff --git a/src/Model/Splitit.php b/src/Model/Splitit.php
index 1924bdb4d..3148f8168 100644
--- a/src/Model/Splitit.php
+++ b/src/Model/Splitit.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Splitit extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Splitit',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): SplititCredentials
diff --git a/src/Model/SplititCredentials.php b/src/Model/SplititCredentials.php
index bf2fa57be..7c0da33a6 100644
--- a/src/Model/SplititCredentials.php
+++ b/src/Model/SplititCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SplititCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('terminalId', $data)) {
$this->setTerminalId($data['terminalId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTerminalId(): string
diff --git a/src/Model/SplititSettings.php b/src/Model/SplititSettings.php
index dd0e6bdd4..d7212f31a 100644
--- a/src/Model/SplititSettings.php
+++ b/src/Model/SplititSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SplititSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('numberOfInstallmentsCustomField', $data)) {
$this->setNumberOfInstallmentsCustomField($data['numberOfInstallmentsCustomField']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getNumberOfInstallmentsCustomField(): ?string
diff --git a/src/Model/StaticGateway.php b/src/Model/StaticGateway.php
index b05572f16..da5c7280e 100644
--- a/src/Model/StaticGateway.php
+++ b/src/Model/StaticGateway.php
@@ -14,17 +14,22 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class StaticGateway extends GatewayAccount
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'StaticGateway',
- ] + $data);
+ ] + $data, $metadata);
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
}
diff --git a/src/Model/Status.php b/src/Model/Status.php
index 6434f0e6d..b9fe3a91d 100644
--- a/src/Model/Status.php
+++ b/src/Model/Status.php
@@ -17,14 +17,17 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Status implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_OK = 'ok';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('status', $data)) {
$this->setStatus($data['status']);
@@ -35,11 +38,12 @@ public function __construct(array $data = [])
if (array_key_exists('release', $data)) {
$this->setRelease($data['release']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStatus(): ?string
diff --git a/src/Model/StringCustomField.php b/src/Model/StringCustomField.php
index 8803f2939..858216d25 100644
--- a/src/Model/StringCustomField.php
+++ b/src/Model/StringCustomField.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class StringCustomField implements CustomField
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -35,11 +39,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/StringCustomFieldAdditionalSchema.php b/src/Model/StringCustomFieldAdditionalSchema.php
index af6a0861a..5eef84f56 100644
--- a/src/Model/StringCustomFieldAdditionalSchema.php
+++ b/src/Model/StringCustomFieldAdditionalSchema.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class StringCustomFieldAdditionalSchema implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('allowedValues', $data)) {
$this->setAllowedValues($data['allowedValues']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('default', $data)) {
$this->setDefault($data['default']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/Stripe.php b/src/Model/Stripe.php
index aa50aaac0..b29e1ccf1 100644
--- a/src/Model/Stripe.php
+++ b/src/Model/Stripe.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Stripe extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Stripe',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ?StripeCredentials
diff --git a/src/Model/StripeCredentials.php b/src/Model/StripeCredentials.php
index f89e3a33f..e088e24e7 100644
--- a/src/Model/StripeCredentials.php
+++ b/src/Model/StripeCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class StripeCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('stripeClientId', $data)) {
$this->setStripeClientId($data['stripeClientId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('stripeSecret', $data)) {
$this->setStripeSecret($data['stripeSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStripeClientId(): ?string
diff --git a/src/Model/StripeSettings.php b/src/Model/StripeSettings.php
index 547b917c5..08a667c0b 100644
--- a/src/Model/StripeSettings.php
+++ b/src/Model/StripeSettings.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class StripeSettings implements JsonSerializable
{
+ use HasMetadata;
+
public const SETUP_FUTURE_USAGE_OFF_SESSION = 'off_session';
public const SETUP_FUTURE_USAGE_ON_SESSION = 'on_session';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('redirectUrl', $data)) {
$this->setRedirectUrl($data['redirectUrl']);
@@ -47,11 +50,15 @@ public function __construct(array $data = [])
if (array_key_exists('includeCardNetwork', $data)) {
$this->setIncludeCardNetwork($data['includeCardNetwork']);
}
+ if (array_key_exists('radarSessionCustomField', $data)) {
+ $this->setRadarSessionCustomField($data['radarSessionCustomField']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRedirectUrl(): string
@@ -138,6 +145,18 @@ public function setIncludeCardNetwork(null|bool $includeCardNetwork): static
return $this;
}
+ public function getRadarSessionCustomField(): ?string
+ {
+ return $this->fields['radarSessionCustomField'] ?? null;
+ }
+
+ public function setRadarSessionCustomField(null|string $radarSessionCustomField): static
+ {
+ $this->fields['radarSessionCustomField'] = $radarSessionCustomField;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
@@ -162,6 +181,9 @@ public function jsonSerialize(): array
if (array_key_exists('includeCardNetwork', $this->fields)) {
$data['includeCardNetwork'] = $this->fields['includeCardNetwork'];
}
+ if (array_key_exists('radarSessionCustomField', $this->fields)) {
+ $data['radarSessionCustomField'] = $this->fields['radarSessionCustomField'];
+ }
return $data;
}
diff --git a/src/Model/StripeThreeDSecureServer.php b/src/Model/StripeThreeDSecureServer.php
index 5f12744a0..c310f5c86 100644
--- a/src/Model/StripeThreeDSecureServer.php
+++ b/src/Model/StripeThreeDSecureServer.php
@@ -15,14 +15,17 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class StripeThreeDSecureServer implements JsonSerializable
{
+ use HasMetadata;
+
public const NAME_STRIPE3_DS_SERVER = 'Stripe3dsServer';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -30,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('enforceThreeDSecure', $data)) {
$this->setEnforceThreeDSecure($data['enforceThreeDSecure']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/Subscription.php b/src/Model/Subscription.php
index 100088d06..3e8ce1b29 100644
--- a/src/Model/Subscription.php
+++ b/src/Model/Subscription.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class Subscription implements SubscriptionOrOneTimeSale
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_ACTIVE = 'active';
@@ -97,7 +100,7 @@ class Subscription implements SubscriptionOrOneTimeSale
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -249,11 +252,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getOrderType(): string
diff --git a/src/Model/SubscriptionCancellation.php b/src/Model/SubscriptionCancellation.php
index 60ed6cbe9..9aaa2ce50 100644
--- a/src/Model/SubscriptionCancellation.php
+++ b/src/Model/SubscriptionCancellation.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionCancellation implements JsonSerializable
{
+ use HasMetadata;
+
public const CANCELED_BY_MERCHANT = 'merchant';
public const CANCELED_BY_CUSTOMER = 'customer';
@@ -62,7 +65,7 @@ class SubscriptionCancellation implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -115,11 +118,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/SubscriptionCancellationLineItemSubtotal.php b/src/Model/SubscriptionCancellationLineItemSubtotal.php
index 84158284f..4d5259f6a 100644
--- a/src/Model/SubscriptionCancellationLineItemSubtotal.php
+++ b/src/Model/SubscriptionCancellationLineItemSubtotal.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionCancellationLineItemSubtotal implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/SubscriptionCancellationLineItems.php b/src/Model/SubscriptionCancellationLineItems.php
index 3b92ce508..138112a69 100644
--- a/src/Model/SubscriptionCancellationLineItems.php
+++ b/src/Model/SubscriptionCancellationLineItems.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionCancellationLineItems implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_DEBIT = 'debit';
public const TYPE_CREDIT = 'credit';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/SubscriptionCancellationReport.php b/src/Model/SubscriptionCancellationReport.php
index 98c14aab7..7e93bbc9b 100644
--- a/src/Model/SubscriptionCancellationReport.php
+++ b/src/Model/SubscriptionCancellationReport.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionCancellationReport implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/SubscriptionCancellationReportData.php b/src/Model/SubscriptionCancellationReportData.php
index 9cdbf2184..0e3e7574b 100644
--- a/src/Model/SubscriptionCancellationReportData.php
+++ b/src/Model/SubscriptionCancellationReportData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionCancellationReportData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('aggregationValue', $data)) {
$this->setAggregationValue($data['aggregationValue']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('medianLength', $data)) {
$this->setMedianLength($data['medianLength']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAggregationValue(): ?string
diff --git a/src/Model/SubscriptionChange.php b/src/Model/SubscriptionChange.php
index 95fe4d455..4e5180855 100644
--- a/src/Model/SubscriptionChange.php
+++ b/src/Model/SubscriptionChange.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionChange implements JsonSerializable
{
+ use HasMetadata;
+
public const RENEWAL_POLICY_RESET = 'reset';
public const RENEWAL_POLICY_RETAIN = 'retain';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('items', $data)) {
$this->setItems($data['items']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('ignoreRecurring', $data)) {
$this->setIgnoreRecurring($data['ignoreRecurring']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/SubscriptionChangeItems.php b/src/Model/SubscriptionChangeItems.php
index 46acdf462..2005222a7 100644
--- a/src/Model/SubscriptionChangeItems.php
+++ b/src/Model/SubscriptionChangeItems.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionChangeItems implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('plan', $data)) {
$this->setPlan($data['plan']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('usageLimits', $data)) {
$this->setUsageLimits($data['usageLimits']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPlan(): ConfigurablePlan
diff --git a/src/Model/SubscriptionEmbedded.php b/src/Model/SubscriptionEmbedded.php
index 371547299..d02b240df 100644
--- a/src/Model/SubscriptionEmbedded.php
+++ b/src/Model/SubscriptionEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('recentInvoice', $data)) {
$this->setRecentInvoice($data['recentInvoice']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('upcomingInvoice', $data)) {
$this->setUpcomingInvoice($data['upcomingInvoice']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getRecentInvoice(): ?Invoice
diff --git a/src/Model/SubscriptionInvoice.php b/src/Model/SubscriptionInvoice.php
index 19e325600..9cea71fce 100644
--- a/src/Model/SubscriptionInvoice.php
+++ b/src/Model/SubscriptionInvoice.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionInvoice implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactionId', $data)) {
$this->setTransactionId($data['transactionId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTransactionId(): ?string
diff --git a/src/Model/SubscriptionItem.php b/src/Model/SubscriptionItem.php
index 77a027e2c..2cb64350e 100644
--- a/src/Model/SubscriptionItem.php
+++ b/src/Model/SubscriptionItem.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionItem implements RecurringOrderItems
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -62,6 +65,9 @@ public function __construct(array $data = [])
if (array_key_exists('usageStatus', $data)) {
$this->setUsageStatus($data['usageStatus']);
}
+ if (array_key_exists('revision', $data)) {
+ $this->setRevision($data['revision']);
+ }
if (array_key_exists('excludeFromMrr', $data)) {
$this->setExcludeFromMrr($data['excludeFromMrr']);
}
@@ -71,11 +77,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
@@ -228,6 +235,11 @@ public function setUsageStatus(null|UsageStatus|array $usageStatus): static
return $this;
}
+ public function getRevision(): ?int
+ {
+ return $this->fields['revision'] ?? null;
+ }
+
public function getExcludeFromMrr(): ?bool
{
return $this->fields['excludeFromMrr'] ?? null;
@@ -294,6 +306,9 @@ public function jsonSerialize(): array
if (array_key_exists('usageStatus', $this->fields)) {
$data['usageStatus'] = $this->fields['usageStatus']?->jsonSerialize();
}
+ if (array_key_exists('revision', $this->fields)) {
+ $data['revision'] = $this->fields['revision'];
+ }
if (array_key_exists('excludeFromMrr', $this->fields)) {
$data['excludeFromMrr'] = $this->fields['excludeFromMrr'];
}
@@ -346,6 +361,13 @@ private function setProductId(null|string $productId): static
return $this;
}
+ private function setRevision(null|int $revision): static
+ {
+ $this->fields['revision'] = $revision;
+
+ return $this;
+ }
+
private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
{
if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
diff --git a/src/Model/SubscriptionItemRecurringInterval.php b/src/Model/SubscriptionItemRecurringInterval.php
index f0cbd17c4..118744b58 100644
--- a/src/Model/SubscriptionItemRecurringInterval.php
+++ b/src/Model/SubscriptionItemRecurringInterval.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionItemRecurringInterval implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('periodAnchorInstruction', $data)) {
$this->setPeriodAnchorInstruction($data['periodAnchorInstruction']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPeriodAnchorInstruction(): ?ServicePeriodAnchorInstruction
diff --git a/src/Model/SubscriptionLineItemSubtotal.php b/src/Model/SubscriptionLineItemSubtotal.php
index b1c8afbaf..d9bc5698e 100644
--- a/src/Model/SubscriptionLineItemSubtotal.php
+++ b/src/Model/SubscriptionLineItemSubtotal.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionLineItemSubtotal implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCurrency(): ?string
diff --git a/src/Model/SubscriptionLineItems.php b/src/Model/SubscriptionLineItems.php
index 3e1655be1..6086996eb 100644
--- a/src/Model/SubscriptionLineItems.php
+++ b/src/Model/SubscriptionLineItems.php
@@ -17,16 +17,19 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionLineItems implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_DEBIT = 'debit';
public const TYPE_CREDIT = 'credit';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('updatedTime', $data)) {
$this->setUpdatedTime($data['updatedTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): ?string
diff --git a/src/Model/SubscriptionOrOneTimeSaleFactory.php b/src/Model/SubscriptionOrOneTimeSaleFactory.php
index 7f024cf6c..30b585564 100644
--- a/src/Model/SubscriptionOrOneTimeSaleFactory.php
+++ b/src/Model/SubscriptionOrOneTimeSaleFactory.php
@@ -18,11 +18,11 @@
class SubscriptionOrOneTimeSaleFactory
{
- public static function from(array $data = []): SubscriptionOrOneTimeSale
+ public static function from(array $data = [], array $metadata = []): SubscriptionOrOneTimeSale
{
return match ($data['orderType']) {
- 'one-time-order' => OneTimeSale::from($data),
- 'subscription-order' => Subscription::from($data),
+ 'one-time-order' => OneTimeSale::from($data, $metadata),
+ 'subscription-order' => Subscription::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/SubscriptionOrOneTimeSaleItem.php b/src/Model/SubscriptionOrOneTimeSaleItem.php
index ff5ec380a..2d99bd9cd 100644
--- a/src/Model/SubscriptionOrOneTimeSaleItem.php
+++ b/src/Model/SubscriptionOrOneTimeSaleItem.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionOrOneTimeSaleItem implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -58,11 +61,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/SubscriptionOrOneTimeSaleItemEmbedded.php b/src/Model/SubscriptionOrOneTimeSaleItemEmbedded.php
index 7cf8de002..77903e03e 100644
--- a/src/Model/SubscriptionOrOneTimeSaleItemEmbedded.php
+++ b/src/Model/SubscriptionOrOneTimeSaleItemEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionOrOneTimeSaleItemEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('product', $data)) {
$this->setProduct($data['product']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getProduct(): ?Product
diff --git a/src/Model/SubscriptionPause.php b/src/Model/SubscriptionPause.php
index c5f207b60..5708a6798 100644
--- a/src/Model/SubscriptionPause.php
+++ b/src/Model/SubscriptionPause.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionPause implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING = 'pending';
public const STATUS_ONGOING = 'ongoing';
@@ -34,7 +37,7 @@ class SubscriptionPause implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -69,11 +72,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/SubscriptionPlan.php b/src/Model/SubscriptionPlan.php
index f895a163f..df5a759e7 100644
--- a/src/Model/SubscriptionPlan.php
+++ b/src/Model/SubscriptionPlan.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionPlan implements Plan, FlexiblePlan
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -86,16 +89,17 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
- public function getId(): ?string
+ public function getId(): string
{
- return $this->fields['id'] ?? null;
+ return $this->fields['id'];
}
public function getName(): string
@@ -300,17 +304,6 @@ public function getInvoiceTimeShift(): ?InvoiceTimeShift
return $this->fields['invoiceTimeShift'] ?? null;
}
- public function setInvoiceTimeShift(null|InvoiceTimeShift|array $invoiceTimeShift): static
- {
- if ($invoiceTimeShift !== null && !($invoiceTimeShift instanceof InvoiceTimeShift)) {
- $invoiceTimeShift = InvoiceTimeShift::from($invoiceTimeShift);
- }
-
- $this->fields['invoiceTimeShift'] = $invoiceTimeShift;
-
- return $this;
- }
-
public function getCreatedTime(): ?DateTimeImmutable
{
return $this->fields['createdTime'] ?? null;
@@ -404,7 +397,7 @@ public function jsonSerialize(): array
return $data;
}
- private function setId(null|string $id): static
+ private function setId(string $id): static
{
$this->fields['id'] = $id;
@@ -432,6 +425,17 @@ private function setIsTrialOnly(null|bool $isTrialOnly): static
return $this;
}
+ private function setInvoiceTimeShift(null|InvoiceTimeShift|array $invoiceTimeShift): static
+ {
+ if ($invoiceTimeShift !== null && !($invoiceTimeShift instanceof InvoiceTimeShift)) {
+ $invoiceTimeShift = InvoiceTimeShift::from($invoiceTimeShift);
+ }
+
+ $this->fields['invoiceTimeShift'] = $invoiceTimeShift;
+
+ return $this;
+ }
+
private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
{
if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
diff --git a/src/Model/SubscriptionPlanMeteredBilling.php b/src/Model/SubscriptionPlanMeteredBilling.php
index ed867a723..a8c79350c 100644
--- a/src/Model/SubscriptionPlanMeteredBilling.php
+++ b/src/Model/SubscriptionPlanMeteredBilling.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionPlanMeteredBilling implements JsonSerializable
{
+ use HasMetadata;
+
public const STRATEGY_SUM = 'sum';
public const STRATEGY_LAST = 'last';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('strategy', $data)) {
$this->setStrategy($data['strategy']);
@@ -35,11 +38,12 @@ public function __construct(array $data = [])
if (array_key_exists('max', $data)) {
$this->setMax($data['max']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStrategy(): string
diff --git a/src/Model/SubscriptionPlanRecurringInterval.php b/src/Model/SubscriptionPlanRecurringInterval.php
index 4c308ab12..c70252cc7 100644
--- a/src/Model/SubscriptionPlanRecurringInterval.php
+++ b/src/Model/SubscriptionPlanRecurringInterval.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionPlanRecurringInterval implements JsonSerializable
{
+ use HasMetadata;
+
public const UNIT_DAY = 'day';
public const UNIT_WEEK = 'week';
@@ -32,7 +35,7 @@ class SubscriptionPlanRecurringInterval implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('periodAnchorInstruction', $data)) {
$this->setPeriodAnchorInstruction($data['periodAnchorInstruction']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('billingTiming', $data)) {
$this->setBillingTiming($data['billingTiming']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPeriodAnchorInstruction(): ?ServicePeriodAnchorInstruction
diff --git a/src/Model/SubscriptionReactivation.php b/src/Model/SubscriptionReactivation.php
index 0f8684167..43cead499 100644
--- a/src/Model/SubscriptionReactivation.php
+++ b/src/Model/SubscriptionReactivation.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionReactivation implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -54,11 +57,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/SubscriptionRecurringInterval.php b/src/Model/SubscriptionRecurringInterval.php
index 985d1c85b..1fe219571 100644
--- a/src/Model/SubscriptionRecurringInterval.php
+++ b/src/Model/SubscriptionRecurringInterval.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionRecurringInterval implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('periodAnchorInstruction', $data)) {
$this->setPeriodAnchorInstruction($data['periodAnchorInstruction']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPeriodAnchorInstruction(): ?ServicePeriodAnchorInstruction
diff --git a/src/Model/SubscriptionRenewal.php b/src/Model/SubscriptionRenewal.php
index d7acaf50e..2b7f36fe9 100644
--- a/src/Model/SubscriptionRenewal.php
+++ b/src/Model/SubscriptionRenewal.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionRenewal implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/SubscriptionRenewalData.php b/src/Model/SubscriptionRenewalData.php
index 4bd4a014c..d0b3efa6d 100644
--- a/src/Model/SubscriptionRenewalData.php
+++ b/src/Model/SubscriptionRenewalData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionRenewalData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('planId', $data)) {
$this->setPlanId($data['planId']);
@@ -52,11 +55,12 @@ public function __construct(array $data = [])
if (array_key_exists('chargebackDunningCount', $data)) {
$this->setChargebackDunningCount($data['chargebackDunningCount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPlanId(): ?string
diff --git a/src/Model/SubscriptionSummaryMetrics.php b/src/Model/SubscriptionSummaryMetrics.php
index 1f60da703..570c0a83e 100644
--- a/src/Model/SubscriptionSummaryMetrics.php
+++ b/src/Model/SubscriptionSummaryMetrics.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionSummaryMetrics implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('invoiceCount', $data)) {
$this->setInvoiceCount($data['invoiceCount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCurrency(): ?string
diff --git a/src/Model/SubscriptionTrial.php b/src/Model/SubscriptionTrial.php
index 95e51945f..0ccf5aa9a 100644
--- a/src/Model/SubscriptionTrial.php
+++ b/src/Model/SubscriptionTrial.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionTrial implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('enabled', $data)) {
$this->setEnabled($data['enabled']);
@@ -30,11 +33,12 @@ public function __construct(array $data = [])
if (array_key_exists('endTime', $data)) {
$this->setEndTime($data['endTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEnabled(): ?bool
diff --git a/src/Model/SubscriptionsDataExport.php b/src/Model/SubscriptionsDataExport.php
index d63110af0..bb032b94f 100644
--- a/src/Model/SubscriptionsDataExport.php
+++ b/src/Model/SubscriptionsDataExport.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionsDataExport implements DataExport
{
+ use HasMetadata;
+
public const FORMAT_CSV = 'csv';
public const FORMAT_JSON = 'json';
@@ -37,7 +40,7 @@ class SubscriptionsDataExport implements DataExport
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -90,11 +93,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResource(): string
@@ -234,15 +238,15 @@ public function getStatus(): ?string
return $this->fields['status'] ?? null;
}
- public function getDateRange(): ?DataExportDateRange
+ public function getDateRange(): ?SubscriptionsDataExportDateRange
{
return $this->fields['dateRange'] ?? null;
}
- public function setDateRange(null|DataExportDateRange|array $dateRange): static
+ public function setDateRange(null|SubscriptionsDataExportDateRange|array $dateRange): static
{
- if ($dateRange !== null && !($dateRange instanceof DataExportDateRange)) {
- $dateRange = DataExportDateRange::from($dateRange);
+ if ($dateRange !== null && !($dateRange instanceof SubscriptionsDataExportDateRange)) {
+ $dateRange = SubscriptionsDataExportDateRange::from($dateRange);
}
$this->fields['dateRange'] = $dateRange;
diff --git a/src/Model/SubscriptionsDataExportDateRange.php b/src/Model/SubscriptionsDataExportDateRange.php
new file mode 100644
index 000000000..1ef4b7553
--- /dev/null
+++ b/src/Model/SubscriptionsDataExportDateRange.php
@@ -0,0 +1,96 @@
+setStart($data['start']);
+ }
+ if (array_key_exists('end', $data)) {
+ $this->setEnd($data['end']);
+ }
+ if (array_key_exists('field', $data)) {
+ $this->setField($data['field']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getStart(): string
+ {
+ return $this->fields['start'];
+ }
+
+ public function setStart(string $start): static
+ {
+ $this->fields['start'] = $start;
+
+ return $this;
+ }
+
+ public function getEnd(): string
+ {
+ return $this->fields['end'];
+ }
+
+ public function setEnd(string $end): static
+ {
+ $this->fields['end'] = $end;
+
+ return $this;
+ }
+
+ public function getField(): ?string
+ {
+ return $this->fields['field'] ?? null;
+ }
+
+ public function setField(null|string $field): static
+ {
+ $this->fields['field'] = $field;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('start', $this->fields)) {
+ $data['start'] = $this->fields['start'];
+ }
+ if (array_key_exists('end', $this->fields)) {
+ $data['end'] = $this->fields['end'];
+ }
+ if (array_key_exists('field', $this->fields)) {
+ $data['field'] = $this->fields['field'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/SubscriptionsDataExportEmbedded.php b/src/Model/SubscriptionsDataExportEmbedded.php
index c74ddefaa..cc01a6379 100644
--- a/src/Model/SubscriptionsDataExportEmbedded.php
+++ b/src/Model/SubscriptionsDataExportEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SubscriptionsDataExportEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('user', $data)) {
$this->setUser($data['user']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): ?File
diff --git a/src/Model/SystemEvent.php b/src/Model/SystemEvent.php
index 1ad9a3cec..1080c765a 100644
--- a/src/Model/SystemEvent.php
+++ b/src/Model/SystemEvent.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class SystemEvent implements JsonSerializable
{
+ use HasMetadata;
+
public const EVENT_TYPE_ACCOUNT_PASSWORD_RESET_REQUESTED = 'account-password-reset-requested';
public const EVENT_TYPE_ACCOUNT_VERIFICATION_REQUESTED = 'account-verification-requested';
@@ -216,7 +219,7 @@ class SystemEvent implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('eventType', $data)) {
$this->setEventType($data['eventType']);
@@ -239,11 +242,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEventType(): ?string
diff --git a/src/Model/TWINT.php b/src/Model/TWINT.php
index 3959f8a60..8b1adbfe7 100644
--- a/src/Model/TWINT.php
+++ b/src/Model/TWINT.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class TWINT extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'TWINT',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): TWINTCredentials
diff --git a/src/Model/TWINTCredentials.php b/src/Model/TWINTCredentials.php
index 81614a167..fba8065a9 100644
--- a/src/Model/TWINTCredentials.php
+++ b/src/Model/TWINTCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TWINTCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('storeUuid', $data)) {
$this->setStoreUuid($data['storeUuid']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('keyPassphrase', $data)) {
$this->setKeyPassphrase($data['keyPassphrase']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStoreUuid(): string
diff --git a/src/Model/TWINTSettings.php b/src/Model/TWINTSettings.php
index a29f2d77a..2898fcdac 100644
--- a/src/Model/TWINTSettings.php
+++ b/src/Model/TWINTSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TWINTSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('cashRegisterType', $data)) {
$this->setCashRegisterType($data['cashRegisterType']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCashRegisterType(): string
diff --git a/src/Model/Tabby.php b/src/Model/Tabby.php
index aa6f8bcf5..221dcc093 100644
--- a/src/Model/Tabby.php
+++ b/src/Model/Tabby.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Tabby extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Tabby',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): TabbyCredentials
diff --git a/src/Model/TabbyCredentials.php b/src/Model/TabbyCredentials.php
index f3996015f..06733a897 100644
--- a/src/Model/TabbyCredentials.php
+++ b/src/Model/TabbyCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TabbyCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantCode', $data)) {
$this->setMerchantCode($data['merchantCode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublicKey(): string
diff --git a/src/Model/TabbySettings.php b/src/Model/TabbySettings.php
index 84603e12e..3bfbd0f38 100644
--- a/src/Model/TabbySettings.php
+++ b/src/Model/TabbySettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TabbySettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('category', $data)) {
$this->setCategory($data['category']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCategory(): ?string
diff --git a/src/Model/Tag.php b/src/Model/Tag.php
index 8a9d14394..fde01075f 100644
--- a/src/Model/Tag.php
+++ b/src/Model/Tag.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Tag implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_CUSTOMER = 'customer';
public const TYPE_KYC_DOCUMENT = 'kyc-document';
@@ -28,7 +31,7 @@ class Tag implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -48,11 +51,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/TagUntagRule.php b/src/Model/TagUntagRule.php
index 18b3b6348..aea3b5aa8 100644
--- a/src/Model/TagUntagRule.php
+++ b/src/Model/TagUntagRule.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TagUntagRule implements JsonSerializable
{
+ use HasMetadata;
+
public const EVENT_TYPE_AML_LIST_POSSIBLY_MATCHED = 'aml-list-possibly-matched';
public const EVENT_TYPE_AUTODEPOSIT_LOOKUP_PERFORMED = 'autodeposit-lookup-performed';
@@ -168,7 +171,7 @@ class TagUntagRule implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -200,11 +203,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/TaxItem.php b/src/Model/TaxItem.php
index 71c31cfd3..ba3c6915e 100644
--- a/src/Model/TaxItem.php
+++ b/src/Model/TaxItem.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TaxItem implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -58,11 +61,12 @@ public function __construct(array $data = [])
if (array_key_exists('jurisdictions', $data)) {
$this->setJurisdictions($data['jurisdictions']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): float
diff --git a/src/Model/TaxItemJurisdictions.php b/src/Model/TaxItemJurisdictions.php
index fffa4bc3f..21e818697 100644
--- a/src/Model/TaxItemJurisdictions.php
+++ b/src/Model/TaxItemJurisdictions.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TaxItemJurisdictions implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('country', $data)) {
$this->setCountry($data['country']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('city', $data)) {
$this->setCity($data['city']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCountry(): ?string
diff --git a/src/Model/TaxJarCredential.php b/src/Model/TaxJarCredential.php
index 8db7a0f69..bfcb442cc 100644
--- a/src/Model/TaxJarCredential.php
+++ b/src/Model/TaxJarCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class TaxJarCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -27,7 +30,7 @@ class TaxJarCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -50,11 +53,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/TaxNumber.php b/src/Model/TaxNumber.php
index 8dbb27f84..daafeddd7 100644
--- a/src/Model/TaxNumber.php
+++ b/src/Model/TaxNumber.php
@@ -15,16 +15,19 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TaxNumber implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_EU_VAT = 'eu-vat';
public const TYPE_OTHER = 'other';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -38,11 +41,12 @@ public function __construct(array $data = [])
if (array_key_exists('isValid', $data)) {
$this->setIsValid($data['isValid']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/TaxTracking.php b/src/Model/TaxTracking.php
index cec9b10d5..af08ca216 100644
--- a/src/Model/TaxTracking.php
+++ b/src/Model/TaxTracking.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TaxTracking implements JsonSerializable
{
+ use HasMetadata;
+
public const TAX_SERVICE_TAXJAR = 'taxjar';
public const TAX_SERVICE_AVALARA = 'avalara';
@@ -30,7 +33,7 @@ class TaxTracking implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -80,11 +83,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/TaxesFactory.php b/src/Model/TaxesFactory.php
index 6e1eb0d33..e4da839fb 100644
--- a/src/Model/TaxesFactory.php
+++ b/src/Model/TaxesFactory.php
@@ -18,12 +18,12 @@
class TaxesFactory
{
- public static function from(array $data = []): Taxes
+ public static function from(array $data = [], array $metadata = []): Taxes
{
return match ($data['calculator']) {
- 'manual' => ManualTax::from($data),
- 'rebilly-avalara' => RebillyAvalaraTax::from($data),
- 'rebilly-taxjar' => RebillyTaxJarTax::from($data),
+ 'manual' => ManualTax::from($data, $metadata),
+ 'rebilly-avalara' => RebillyAvalaraTax::from($data, $metadata),
+ 'rebilly-taxjar' => RebillyTaxJarTax::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/Telr.php b/src/Model/Telr.php
index 923260d4b..c0bb79f8a 100644
--- a/src/Model/Telr.php
+++ b/src/Model/Telr.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Telr extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Telr',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): TelrCredentials
diff --git a/src/Model/TelrCredentials.php b/src/Model/TelrCredentials.php
index 686ca9230..cf55331df 100644
--- a/src/Model/TelrCredentials.php
+++ b/src/Model/TelrCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TelrCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('storeId', $data)) {
$this->setStoreId($data['storeId']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('remoteApiKey', $data)) {
$this->setRemoteApiKey($data['remoteApiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getStoreId(): string
diff --git a/src/Model/TelrSettings.php b/src/Model/TelrSettings.php
index 97c787093..709c18ef2 100644
--- a/src/Model/TelrSettings.php
+++ b/src/Model/TelrSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TelrSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactionDescription', $data)) {
$this->setTransactionDescription($data['transactionDescription']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTransactionDescription(): ?string
diff --git a/src/Model/TestProcessor.php b/src/Model/TestProcessor.php
index 18d2cfa1f..8d62fd253 100644
--- a/src/Model/TestProcessor.php
+++ b/src/Model/TestProcessor.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class TestProcessor extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'TestProcessor',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getThreeDSecureServer(): ?ThreeDSecureIO3dsServer
diff --git a/src/Model/ThreeColumnsTimelineTable.php b/src/Model/ThreeColumnsTimelineTable.php
index 0f2c2b5b7..921593f6a 100644
--- a/src/Model/ThreeColumnsTimelineTable.php
+++ b/src/Model/ThreeColumnsTimelineTable.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ThreeColumnsTimelineTable extends TimelineTable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'type' => 'three-columns',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/ThreeColumnsTimelineTableData.php b/src/Model/ThreeColumnsTimelineTableData.php
index 81a24b26d..8e88f8dc7 100644
--- a/src/Model/ThreeColumnsTimelineTableData.php
+++ b/src/Model/ThreeColumnsTimelineTableData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ThreeColumnsTimelineTableData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('attribute', $data)) {
$this->setAttribute($data['attribute']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('newValue', $data)) {
$this->setNewValue($data['newValue']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAttribute(): ?string
diff --git a/src/Model/ThreeDSecureIO3dsServer.php b/src/Model/ThreeDSecureIO3dsServer.php
index 2cddeb3ac..a7b90966b 100644
--- a/src/Model/ThreeDSecureIO3dsServer.php
+++ b/src/Model/ThreeDSecureIO3dsServer.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ThreeDSecureIO3dsServer implements JsonSerializable
{
+ use HasMetadata;
+
public const NAME_THREE_D_SECURE_IO3_DS_SERVER = 'ThreeDSecureIO3dsServer';
public const TRANSACTION_TYPE_01 = '01';
@@ -32,7 +35,7 @@ class ThreeDSecureIO3dsServer implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('name', $data)) {
$this->setName($data['name']);
@@ -85,11 +88,12 @@ public function __construct(array $data = [])
if (array_key_exists('forceChallenge', $data)) {
$this->setForceChallenge($data['forceChallenge']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getName(): string
diff --git a/src/Model/TimeSeriesTransaction.php b/src/Model/TimeSeriesTransaction.php
index c69c84cbe..8b161568b 100644
--- a/src/Model/TimeSeriesTransaction.php
+++ b/src/Model/TimeSeriesTransaction.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TimeSeriesTransaction implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/TimeSeriesTransactionData.php b/src/Model/TimeSeriesTransactionData.php
index ce406ec36..f4fcc75b3 100644
--- a/src/Model/TimeSeriesTransactionData.php
+++ b/src/Model/TimeSeriesTransactionData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TimeSeriesTransactionData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('date', $data)) {
$this->setDate($data['date']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('subaggregates', $data)) {
$this->setSubaggregates($data['subaggregates']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDate(): ?string
diff --git a/src/Model/TimeSeriesTransactionDataSubaggregates.php b/src/Model/TimeSeriesTransactionDataSubaggregates.php
index 1a482ceed..ce5d1981d 100644
--- a/src/Model/TimeSeriesTransactionDataSubaggregates.php
+++ b/src/Model/TimeSeriesTransactionDataSubaggregates.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TimeSeriesTransactionDataSubaggregates implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('subaggregate', $data)) {
$this->setSubaggregate($data['subaggregate']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSubaggregate(): ?string
diff --git a/src/Model/TimelineActionFactory.php b/src/Model/TimelineActionFactory.php
index 49f8dc6cc..23868fad3 100644
--- a/src/Model/TimelineActionFactory.php
+++ b/src/Model/TimelineActionFactory.php
@@ -18,13 +18,13 @@
class TimelineActionFactory
{
- public static function from(array $data = []): TimelineAction
+ public static function from(array $data = [], array $metadata = []): TimelineAction
{
return match ($data['action']) {
- 'redemption-cancel' => RedemptionCancelTimelineAction::from($data),
- 'resend-email' => ResendEmailTimelineAction::from($data),
- 'ruleset-restore' => RulesetRestoreTimelineAction::from($data),
- 'show-edd-search-logs' => ShowEddSearchLogsTimelineAction::from($data),
+ 'redemption-cancel' => RedemptionCancelTimelineAction::from($data, $metadata),
+ 'resend-email' => ResendEmailTimelineAction::from($data, $metadata),
+ 'ruleset-restore' => RulesetRestoreTimelineAction::from($data, $metadata),
+ 'show-edd-search-logs' => ShowEddSearchLogsTimelineAction::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/TimelineExtraData.php b/src/Model/TimelineExtraData.php
index ab2e92ddc..07e7bd177 100644
--- a/src/Model/TimelineExtraData.php
+++ b/src/Model/TimelineExtraData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TimelineExtraData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('actions', $data)) {
$this->setActions($data['actions']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('links', $data)) {
$this->setLinks($data['links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/TimelineExtraDataAuthor.php b/src/Model/TimelineExtraDataAuthor.php
index f92aec56f..3dd6adbf8 100644
--- a/src/Model/TimelineExtraDataAuthor.php
+++ b/src/Model/TimelineExtraDataAuthor.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TimelineExtraDataAuthor implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('userFullName', $data)) {
$this->setUserFullName($data['userFullName']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('userId', $data)) {
$this->setUserId($data['userId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUserFullName(): ?string
diff --git a/src/Model/TimelineExtraDataLinks.php b/src/Model/TimelineExtraDataLinks.php
index d9b99ada0..df0029a24 100644
--- a/src/Model/TimelineExtraDataLinks.php
+++ b/src/Model/TimelineExtraDataLinks.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TimelineExtraDataLinks implements JsonSerializable
{
+ use HasMetadata;
+
public const RESOURCE_TYPE_KYC_DOCUMENT = 'kyc-document';
public const RESOURCE_TYPE_INVOICE = 'invoice';
@@ -36,7 +39,7 @@ class TimelineExtraDataLinks implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('resourceType', $data)) {
$this->setResourceType($data['resourceType']);
@@ -50,11 +53,12 @@ public function __construct(array $data = [])
if (array_key_exists('externalUrl', $data)) {
$this->setExternalUrl($data['externalUrl']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResourceType(): ?string
diff --git a/src/Model/TimelineTable.php b/src/Model/TimelineTable.php
index 632dc8270..a30d01c27 100644
--- a/src/Model/TimelineTable.php
+++ b/src/Model/TimelineTable.php
@@ -16,9 +16,12 @@
use InvalidArgumentException;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
abstract class TimelineTable implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_LIST = 'list';
public const TYPE_ONE_COLUMNS = 'one-columns';
@@ -29,7 +32,7 @@ abstract class TimelineTable implements JsonSerializable
private array $fields = [];
- protected function __construct(array $data = [])
+ protected function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('type', $data)) {
$this->setType($data['type']);
@@ -40,19 +43,20 @@ protected function __construct(array $data = [])
if (array_key_exists('footer', $data)) {
$this->setFooter($data['footer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
switch ($data['type']) {
case 'list':
- return ListTimelineTable::from($data);
+ return ListTimelineTable::from($data, $metadata);
case 'one-column':
- return OneColumnTimelineTable::from($data);
+ return OneColumnTimelineTable::from($data, $metadata);
case 'three-columns':
- return ThreeColumnsTimelineTable::from($data);
+ return ThreeColumnsTimelineTable::from($data, $metadata);
case 'two-columns':
- return TwoColumnsTimelineTable::from($data);
+ return TwoColumnsTimelineTable::from($data, $metadata);
}
throw new InvalidArgumentException("Unsupported type value: '{$data['type']}'");
diff --git a/src/Model/ToditoCash.php b/src/Model/ToditoCash.php
index 49e79823a..292aea7a5 100644
--- a/src/Model/ToditoCash.php
+++ b/src/Model/ToditoCash.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class ToditoCash extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'ToditoCash',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ToditoCashCredentials
diff --git a/src/Model/ToditoCashCredentials.php b/src/Model/ToditoCashCredentials.php
index 87129d224..43ba8b682 100644
--- a/src/Model/ToditoCashCredentials.php
+++ b/src/Model/ToditoCashCredentials.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ToditoCashCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApiKey(): string
diff --git a/src/Model/Transaction.php b/src/Model/Transaction.php
index a6bc25b04..fccb9ddfb 100644
--- a/src/Model/Transaction.php
+++ b/src/Model/Transaction.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Transaction implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_3_DS_AUTHENTICATION = '3ds-authentication';
public const TYPE_AUTHORIZE = 'authorize';
@@ -504,6 +507,8 @@ class Transaction implements JsonSerializable
public const GATEWAY_NAME_VEGA_WALLET = 'VegaWallet';
+ public const GATEWAY_NAME_VIVA = 'Viva';
+
public const GATEWAY_NAME_WALLET88 = 'Wallet88';
public const GATEWAY_NAME_WALPAY = 'Walpay';
@@ -940,16 +945,6 @@ class Transaction implements JsonSerializable
public const ACQUIRER_NAME_ZOTAPAY = 'Zotapay';
- public const METHOD_PAYMENT_CARD = 'payment-card';
-
- public const METHOD_ACH = 'ach';
-
- public const METHOD_CASH = 'cash';
-
- public const METHOD_CHECK = 'check';
-
- public const METHOD_PAYPAL = 'paypal';
-
public const METHOD_ADV_CASH = 'AdvCash';
public const METHOD_AERA = 'Aera';
@@ -1298,6 +1293,8 @@ class Transaction implements JsonSerializable
public const METHOD_VENUS_POINT = 'VenusPoint';
+ public const METHOD_VIVA = 'Viva';
+
public const METHOD_VOUCHER = 'voucher';
public const METHOD_VOUCHER2 = 'voucher-2';
@@ -1346,7 +1343,7 @@ class Transaction implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -1543,6 +1540,9 @@ public function __construct(array $data = [])
if (array_key_exists('depositRequestId', $data)) {
$this->setDepositRequestId($data['depositRequestId']);
}
+ if (array_key_exists('transferId', $data)) {
+ $this->setTransferId($data['transferId']);
+ }
if (array_key_exists('payoutRequestId', $data)) {
$this->setPayoutRequestId($data['payoutRequestId']);
}
@@ -1552,11 +1552,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
@@ -2060,6 +2061,11 @@ public function getDepositRequestId(): ?string
return $this->fields['depositRequestId'] ?? null;
}
+ public function getTransferId(): ?string
+ {
+ return $this->fields['transferId'] ?? null;
+ }
+
public function getPayoutRequestId(): ?string
{
return $this->fields['payoutRequestId'] ?? null;
@@ -2287,6 +2293,9 @@ public function jsonSerialize(): array
if (array_key_exists('depositRequestId', $this->fields)) {
$data['depositRequestId'] = $this->fields['depositRequestId'];
}
+ if (array_key_exists('transferId', $this->fields)) {
+ $data['transferId'] = $this->fields['transferId'];
+ }
if (array_key_exists('payoutRequestId', $this->fields)) {
$data['payoutRequestId'] = $this->fields['payoutRequestId'];
}
@@ -2682,6 +2691,13 @@ private function setDepositRequestId(null|string $depositRequestId): static
return $this;
}
+ private function setTransferId(null|string $transferId): static
+ {
+ $this->fields['transferId'] = $transferId;
+
+ return $this;
+ }
+
private function setPayoutRequestId(null|string $payoutRequestId): static
{
$this->fields['payoutRequestId'] = $payoutRequestId;
diff --git a/src/Model/Transaction3ds.php b/src/Model/Transaction3ds.php
index d6d8d7270..10685d3b2 100644
--- a/src/Model/Transaction3ds.php
+++ b/src/Model/Transaction3ds.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Transaction3ds implements JsonSerializable
{
+ use HasMetadata;
+
public const VERSION_102 = '1.0.2';
public const VERSION_210 = '2.1.0';
@@ -52,7 +55,7 @@ class Transaction3ds implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('server', $data)) {
$this->setServer($data['server']);
@@ -75,11 +78,12 @@ public function __construct(array $data = [])
if (array_key_exists('isDowngraded', $data)) {
$this->setIsDowngraded($data['isDowngraded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getServer(): ?string
diff --git a/src/Model/TransactionDcc.php b/src/Model/TransactionDcc.php
index 3d08b44d9..304f42977 100644
--- a/src/Model/TransactionDcc.php
+++ b/src/Model/TransactionDcc.php
@@ -15,18 +15,21 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionDcc implements JsonSerializable
{
+ use HasMetadata;
+
+ public const OUTCOME_UNPROCESSED = 'unprocessed';
+
public const OUTCOME_REJECTED = 'rejected';
public const OUTCOME_SELECTED = 'selected';
- public const OUTCOME_UNKNOWN = 'unknown';
-
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('base', $data)) {
$this->setBase($data['base']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('outcome', $data)) {
$this->setOutcome($data['outcome']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getBase(): ?Money
diff --git a/src/Model/TransactionEmbedded.php b/src/Model/TransactionEmbedded.php
index e77817a94..ca754d3fd 100644
--- a/src/Model/TransactionEmbedded.php
+++ b/src/Model/TransactionEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('parentTransaction', $data)) {
$this->setParentTransaction($data['parentTransaction']);
@@ -55,11 +58,12 @@ public function __construct(array $data = [])
if (array_key_exists('bankAccount', $data)) {
$this->setBankAccount($data['bankAccount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getParentTransaction(): ?Transaction
diff --git a/src/Model/TransactionGateway.php b/src/Model/TransactionGateway.php
index ae6cd4646..6c318673a 100644
--- a/src/Model/TransactionGateway.php
+++ b/src/Model/TransactionGateway.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionGateway implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('response', $data)) {
$this->setResponse($data['response']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('cvvResponse', $data)) {
$this->setCvvResponse($data['cvvResponse']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResponse(): ?TransactionGatewayResponse
diff --git a/src/Model/TransactionGatewayAvsResponse.php b/src/Model/TransactionGatewayAvsResponse.php
index 6399aa911..8871163b1 100644
--- a/src/Model/TransactionGatewayAvsResponse.php
+++ b/src/Model/TransactionGatewayAvsResponse.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionGatewayAvsResponse implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('code', $data)) {
$this->setCode($data['code']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('originalMessage', $data)) {
$this->setOriginalMessage($data['originalMessage']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCode(): ?string
diff --git a/src/Model/TransactionGatewayCvvResponse.php b/src/Model/TransactionGatewayCvvResponse.php
index 00e5c7b8d..f5c51397f 100644
--- a/src/Model/TransactionGatewayCvvResponse.php
+++ b/src/Model/TransactionGatewayCvvResponse.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionGatewayCvvResponse implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('code', $data)) {
$this->setCode($data['code']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('originalMessage', $data)) {
$this->setOriginalMessage($data['originalMessage']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCode(): ?string
diff --git a/src/Model/TransactionGatewayResponse.php b/src/Model/TransactionGatewayResponse.php
index 87ab5ed65..a9e5b7197 100644
--- a/src/Model/TransactionGatewayResponse.php
+++ b/src/Model/TransactionGatewayResponse.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionGatewayResponse implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('code', $data)) {
$this->setCode($data['code']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('originalMessage', $data)) {
$this->setOriginalMessage($data['originalMessage']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCode(): ?string
diff --git a/src/Model/TransactionLimitAmount.php b/src/Model/TransactionLimitAmount.php
index 4528381cc..84f6b9dbe 100644
--- a/src/Model/TransactionLimitAmount.php
+++ b/src/Model/TransactionLimitAmount.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionLimitAmount implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -33,11 +36,12 @@ public function __construct(array $data = [])
if (array_key_exists('resetTime', $data)) {
$this->setResetTime($data['resetTime']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): ?float
diff --git a/src/Model/TransactionPaymentInstrumentFactory.php b/src/Model/TransactionPaymentInstrumentFactory.php
index b77e54b16..787b61158 100644
--- a/src/Model/TransactionPaymentInstrumentFactory.php
+++ b/src/Model/TransactionPaymentInstrumentFactory.php
@@ -18,208 +18,206 @@
class TransactionPaymentInstrumentFactory
{
- public static function from(array $data = []): TransactionPaymentInstrument
+ public static function from(array $data = [], array $metadata = []): TransactionPaymentInstrument
{
if (isset($data['paymentInstrumentId'])) {
- return VaultedInstrument::from($data);
+ return VaultedInstrument::from($data, $metadata);
}
return match ($data['method']) {
- 'AdvCash' => AlternativePaymentInstrument::from($data),
- 'Aera' => AlternativePaymentInstrument::from($data),
- 'Affirm' => AlternativePaymentInstrument::from($data),
- 'Afterpay' => AlternativePaymentInstrument::from($data),
- 'Aircash' => AlternativePaymentInstrument::from($data),
- 'Airpay' => AlternativePaymentInstrument::from($data),
- 'Alfa-click' => AlternativePaymentInstrument::from($data),
- 'Alipay' => AlternativePaymentInstrument::from($data),
- 'AmazonPay' => AlternativePaymentInstrument::from($data),
- 'Apple Pay' => AlternativePaymentInstrument::from($data),
- 'AstroPay Card' => AlternativePaymentInstrument::from($data),
- 'AstroPay-GO' => AlternativePaymentInstrument::from($data),
- 'Baloto' => AlternativePaymentInstrument::from($data),
- 'Bancontact' => AlternativePaymentInstrument::from($data),
- 'Bancontact-mobile' => AlternativePaymentInstrument::from($data),
- 'BankReferenced' => AlternativePaymentInstrument::from($data),
- 'BankSEND' => AlternativePaymentInstrument::from($data),
- 'Beeline' => AlternativePaymentInstrument::from($data),
- 'Belfius-direct-net' => AlternativePaymentInstrument::from($data),
- 'Bizum' => AlternativePaymentInstrument::from($data),
- 'Blik' => AlternativePaymentInstrument::from($data),
- 'Boleto' => AlternativePaymentInstrument::from($data),
- 'Boleto-2' => AlternativePaymentInstrument::from($data),
- 'Boleto-3' => AlternativePaymentInstrument::from($data),
- 'CASHlib' => AlternativePaymentInstrument::from($data),
- 'CCAvenue' => AlternativePaymentInstrument::from($data),
- 'CODVoucher' => AlternativePaymentInstrument::from($data),
- 'CashToCode' => AlternativePaymentInstrument::from($data),
- 'China UnionPay' => AlternativePaymentInstrument::from($data),
- 'Clearpay' => AlternativePaymentInstrument::from($data),
- 'Cleo' => AlternativePaymentInstrument::from($data),
- 'Conekta-oxxo' => AlternativePaymentInstrument::from($data),
- 'Conekta-spei' => AlternativePaymentInstrument::from($data),
- 'Cupon-de-pagos' => AlternativePaymentInstrument::from($data),
- 'CyberSource' => AlternativePaymentInstrument::from($data),
- 'Dimoco-pay-smart' => AlternativePaymentInstrument::from($data),
- 'Directa24Card' => AlternativePaymentInstrument::from($data),
- 'EPS' => AlternativePaymentInstrument::from($data),
- 'Efecty' => AlternativePaymentInstrument::from($data),
- 'Ethereum' => AlternativePaymentInstrument::from($data),
- 'FasterPay' => AlternativePaymentInstrument::from($data),
- 'Flexepin' => AlternativePaymentInstrument::from($data),
- 'Giropay' => AlternativePaymentInstrument::from($data),
- 'Google Pay' => AlternativePaymentInstrument::from($data),
- 'Gpaysafe' => AlternativePaymentInstrument::from($data),
- 'ING-homepay' => AlternativePaymentInstrument::from($data),
- 'INOVAPAY-pin' => AlternativePaymentInstrument::from($data),
- 'INOVAPAY-wallet' => AlternativePaymentInstrument::from($data),
- 'InstaDebit' => AlternativePaymentInstrument::from($data),
- 'InstantPayments' => AlternativePaymentInstrument::from($data),
- 'Interac' => AlternativePaymentInstrument::from($data),
- 'Interac-eTransfer' => AlternativePaymentInstrument::from($data),
- 'Interac-express-connect' => AlternativePaymentInstrument::from($data),
- 'Interac-online' => AlternativePaymentInstrument::from($data),
- 'Jeton' => AlternativePaymentInstrument::from($data),
- 'JetonCash' => AlternativePaymentInstrument::from($data),
- 'KNOT' => AlternativePaymentInstrument::from($data),
- 'KakaoPay' => AlternativePaymentInstrument::from($data),
- 'Khelocard' => AlternativePaymentInstrument::from($data),
- 'Klarna' => AlternativePaymentInstrument::from($data),
- 'LPG-online' => AlternativePaymentInstrument::from($data),
- 'LPG-payment-card' => AlternativePaymentInstrument::from($data),
- 'Litecoin' => AlternativePaymentInstrument::from($data),
- 'MTS' => AlternativePaymentInstrument::from($data),
- 'Matrix' => AlternativePaymentInstrument::from($data),
- 'MaxiCash' => AlternativePaymentInstrument::from($data),
- 'Megafon' => AlternativePaymentInstrument::from($data),
- 'MercadoPago' => AlternativePaymentInstrument::from($data),
- 'MiFinity-eWallet' => AlternativePaymentInstrument::from($data),
- 'MobilePay' => AlternativePaymentInstrument::from($data),
- 'MuchBetter' => AlternativePaymentInstrument::from($data),
- 'MuchBetterVoucher' => AlternativePaymentInstrument::from($data),
- 'Multibanco' => AlternativePaymentInstrument::from($data),
- 'MyFatoorah' => AlternativePaymentInstrument::from($data),
- 'Neosurf' => AlternativePaymentInstrument::from($data),
- 'Netbanking' => AlternativePaymentInstrument::from($data),
- 'Neteller' => AlternativePaymentInstrument::from($data),
- 'Nordea-Solo' => AlternativePaymentInstrument::from($data),
- 'NordikCoin' => AlternativePaymentInstrument::from($data),
- 'OXXO' => AlternativePaymentInstrument::from($data),
- 'OchaPay' => AlternativePaymentInstrument::from($data),
- 'Onlineueberweisen' => AlternativePaymentInstrument::from($data),
- 'P24' => AlternativePaymentInstrument::from($data),
- 'PIX' => AlternativePaymentInstrument::from($data),
- 'POLi' => AlternativePaymentInstrument::from($data),
- 'Pagadito' => AlternativePaymentInstrument::from($data),
- 'PagoEffectivo' => AlternativePaymentInstrument::from($data),
- 'Pagsmile-deposit-express' => AlternativePaymentInstrument::from($data),
- 'Pagsmile-lottery' => AlternativePaymentInstrument::from($data),
- 'Pay4Fun' => AlternativePaymentInstrument::from($data),
- 'PayCash' => AlternativePaymentInstrument::from($data),
- 'PayTabs' => AlternativePaymentInstrument::from($data),
- 'PayU' => AlternativePaymentInstrument::from($data),
- 'PayULatam' => AlternativePaymentInstrument::from($data),
- 'Payco' => AlternativePaymentInstrument::from($data),
- 'Payeer' => AlternativePaymentInstrument::from($data),
- 'PaymentAsia-crypto' => AlternativePaymentInstrument::from($data),
- 'Paymero' => AlternativePaymentInstrument::from($data),
- 'Paymero-QR' => AlternativePaymentInstrument::from($data),
- 'Paynote' => AlternativePaymentInstrument::from($data),
- 'Paysafecard' => AlternativePaymentInstrument::from($data),
- 'Perfect-money' => AlternativePaymentInstrument::from($data),
- 'PhonePe' => AlternativePaymentInstrument::from($data),
- 'Piastrix' => AlternativePaymentInstrument::from($data),
- 'PinPay' => AlternativePaymentInstrument::from($data),
- 'PostFinance-card' => AlternativePaymentInstrument::from($data),
- 'PostFinance-e-finance' => AlternativePaymentInstrument::from($data),
- 'QIWI' => AlternativePaymentInstrument::from($data),
- 'QPay' => AlternativePaymentInstrument::from($data),
- 'QQPay' => AlternativePaymentInstrument::from($data),
- 'Resurs' => AlternativePaymentInstrument::from($data),
- 'Ripple' => AlternativePaymentInstrument::from($data),
- 'SEPA' => AlternativePaymentInstrument::from($data),
- 'SMSVoucher' => AlternativePaymentInstrument::from($data),
- 'SPEI' => AlternativePaymentInstrument::from($data),
- 'SafetyPay' => AlternativePaymentInstrument::from($data),
- 'Samsung Pay' => AlternativePaymentInstrument::from($data),
- 'Siirto' => AlternativePaymentInstrument::from($data),
- 'Skrill' => AlternativePaymentInstrument::from($data),
- 'Skrill Rapid Transfer' => AlternativePaymentInstrument::from($data),
- 'Sofort' => AlternativePaymentInstrument::from($data),
- 'SparkPay' => AlternativePaymentInstrument::from($data),
- 'TWINT' => AlternativePaymentInstrument::from($data),
- 'Tele2' => AlternativePaymentInstrument::from($data),
- 'Telr' => AlternativePaymentInstrument::from($data),
- 'Terminaly-RF' => AlternativePaymentInstrument::from($data),
- 'Tether' => AlternativePaymentInstrument::from($data),
- 'ToditoCash-card' => AlternativePaymentInstrument::from($data),
- 'Trustly' => AlternativePaymentInstrument::from($data),
- 'Tupay' => AlternativePaymentInstrument::from($data),
- 'UPI' => AlternativePaymentInstrument::from($data),
- 'UPayCard' => AlternativePaymentInstrument::from($data),
- 'USD-coin' => AlternativePaymentInstrument::from($data),
- 'UniCrypt' => AlternativePaymentInstrument::from($data),
- 'VCreditos' => AlternativePaymentInstrument::from($data),
- 'VegaWallet' => AlternativePaymentInstrument::from($data),
- 'VenusPoint' => AlternativePaymentInstrument::from($data),
- 'Wallet88' => AlternativePaymentInstrument::from($data),
- 'WeChat Pay' => AlternativePaymentInstrument::from($data),
- 'Webmoney' => AlternativePaymentInstrument::from($data),
- 'Webpay' => AlternativePaymentInstrument::from($data),
- 'Webpay Card' => AlternativePaymentInstrument::from($data),
- 'Webpay-2' => AlternativePaymentInstrument::from($data),
- 'XPay-P2P' => AlternativePaymentInstrument::from($data),
- 'XPay-QR' => AlternativePaymentInstrument::from($data),
- 'Yandex-money' => AlternativePaymentInstrument::from($data),
- 'Zimpler' => AlternativePaymentInstrument::from($data),
- 'Zip' => AlternativePaymentInstrument::from($data),
- 'Zotapay' => AlternativePaymentInstrument::from($data),
- 'ach' => AlternativePaymentInstrument::from($data),
- 'bank-transfer' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-2' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-3' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-4' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-5' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-6' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-7' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-8' => AlternativePaymentInstrument::from($data),
- 'bank-transfer-9' => AlternativePaymentInstrument::from($data),
- 'bitcoin' => AlternativePaymentInstrument::from($data),
- 'cash-deposit' => AlternativePaymentInstrument::from($data),
- 'cryptocurrency' => AlternativePaymentInstrument::from($data),
- 'domestic-cards' => AlternativePaymentInstrument::from($data),
- 'e-wallet' => AlternativePaymentInstrument::from($data),
- 'ePay.bg' => AlternativePaymentInstrument::from($data),
- 'eZeeWallet' => AlternativePaymentInstrument::from($data),
- 'echeck' => AlternativePaymentInstrument::from($data),
- 'ecoPayz' => AlternativePaymentInstrument::from($data),
- 'ecoPayzTurkey' => AlternativePaymentInstrument::from($data),
- 'ecoVoucher' => AlternativePaymentInstrument::from($data),
- 'ezyEFT' => AlternativePaymentInstrument::from($data),
- 'iCashOne Voucher' => AlternativePaymentInstrument::from($data),
- 'iDEAL' => AlternativePaymentInstrument::from($data),
- 'iDebit' => AlternativePaymentInstrument::from($data),
- 'iWallet' => AlternativePaymentInstrument::from($data),
- 'instant-bank-transfer' => AlternativePaymentInstrument::from($data),
- 'invoice' => AlternativePaymentInstrument::from($data),
- 'jpay' => AlternativePaymentInstrument::from($data),
- 'loonie' => AlternativePaymentInstrument::from($data),
- 'miscellaneous' => AlternativePaymentInstrument::from($data),
- 'online-bank-transfer' => AlternativePaymentInstrument::from($data),
- 'oriental-wallet' => AlternativePaymentInstrument::from($data),
- 'payment-card' => AlternativePaymentInstrument::from($data),
- 'paypal' => AlternativePaymentInstrument::from($data),
- 'phone' => AlternativePaymentInstrument::from($data),
- 'rapyd-checkout' => AlternativePaymentInstrument::from($data),
- 'rebilly-hosted-payment-form' => AlternativePaymentInstrument::from($data),
- 'reverse-withdrawal' => AlternativePaymentInstrument::from($data),
- 'swift-dbt' => AlternativePaymentInstrument::from($data),
- 'voucher' => AlternativePaymentInstrument::from($data),
- 'voucher-2' => AlternativePaymentInstrument::from($data),
- 'voucher-3' => AlternativePaymentInstrument::from($data),
- 'voucher-4' => AlternativePaymentInstrument::from($data),
- 'cash' => CashInstrument::from($data),
- 'check' => CheckInstrument::from($data),
+ 'AdvCash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Aera' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Affirm' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Afterpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Aircash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Airpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Alfa-click' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Alipay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'AmazonPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Apple Pay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'AstroPay Card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'AstroPay-GO' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Baloto' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Bancontact' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Bancontact-mobile' => AlternativePaymentInstrument::from($data, $metadata),
+ 'BankReferenced' => AlternativePaymentInstrument::from($data, $metadata),
+ 'BankSEND' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Beeline' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Belfius-direct-net' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Bizum' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Blik' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Boleto' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Boleto-2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Boleto-3' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CASHlib' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CCAvenue' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CODVoucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CashToCode' => AlternativePaymentInstrument::from($data, $metadata),
+ 'China UnionPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Clearpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Cleo' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Conekta-oxxo' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Conekta-spei' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Cupon-de-pagos' => AlternativePaymentInstrument::from($data, $metadata),
+ 'CyberSource' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Dimoco-pay-smart' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Directa24Card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'EPS' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Efecty' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Ethereum' => AlternativePaymentInstrument::from($data, $metadata),
+ 'FasterPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Flexepin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Giropay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Google Pay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Gpaysafe' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ING-homepay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'INOVAPAY-pin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'INOVAPAY-wallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'InstaDebit' => AlternativePaymentInstrument::from($data, $metadata),
+ 'InstantPayments' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Interac' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Interac-eTransfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Interac-express-connect' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Interac-online' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Jeton' => AlternativePaymentInstrument::from($data, $metadata),
+ 'JetonCash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'KNOT' => AlternativePaymentInstrument::from($data, $metadata),
+ 'KakaoPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Khelocard' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Klarna' => AlternativePaymentInstrument::from($data, $metadata),
+ 'LPG-online' => AlternativePaymentInstrument::from($data, $metadata),
+ 'LPG-payment-card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Litecoin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MTS' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Matrix' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MaxiCash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Megafon' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MercadoPago' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MiFinity-eWallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MobilePay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MuchBetter' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MuchBetterVoucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Multibanco' => AlternativePaymentInstrument::from($data, $metadata),
+ 'MyFatoorah' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Neosurf' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Netbanking' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Neteller' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Nordea-Solo' => AlternativePaymentInstrument::from($data, $metadata),
+ 'NordikCoin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'OXXO' => AlternativePaymentInstrument::from($data, $metadata),
+ 'OchaPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Onlineueberweisen' => AlternativePaymentInstrument::from($data, $metadata),
+ 'P24' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PIX' => AlternativePaymentInstrument::from($data, $metadata),
+ 'POLi' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Pagadito' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PagoEffectivo' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Pagsmile-deposit-express' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Pagsmile-lottery' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Pay4Fun' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PayCash' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PayTabs' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PayU' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PayULatam' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Payco' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Payeer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PaymentAsia-crypto' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Paymero' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Paymero-QR' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Paynote' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Paysafecard' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Perfect-money' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PhonePe' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Piastrix' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PinPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PostFinance-card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'PostFinance-e-finance' => AlternativePaymentInstrument::from($data, $metadata),
+ 'QIWI' => AlternativePaymentInstrument::from($data, $metadata),
+ 'QPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'QQPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Resurs' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Ripple' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SEPA' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SMSVoucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SPEI' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SafetyPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Samsung Pay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Siirto' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Skrill' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Skrill Rapid Transfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Sofort' => AlternativePaymentInstrument::from($data, $metadata),
+ 'SparkPay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'TWINT' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Tele2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Telr' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Terminaly-RF' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Tether' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ToditoCash-card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Trustly' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Tupay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'UPI' => AlternativePaymentInstrument::from($data, $metadata),
+ 'UPayCard' => AlternativePaymentInstrument::from($data, $metadata),
+ 'USD-coin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'UniCrypt' => AlternativePaymentInstrument::from($data, $metadata),
+ 'VCreditos' => AlternativePaymentInstrument::from($data, $metadata),
+ 'VegaWallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'VenusPoint' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Viva' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Wallet88' => AlternativePaymentInstrument::from($data, $metadata),
+ 'WeChat Pay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Webmoney' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Webpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Webpay Card' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Webpay-2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'XPay-P2P' => AlternativePaymentInstrument::from($data, $metadata),
+ 'XPay-QR' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Yandex-money' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Zimpler' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Zip' => AlternativePaymentInstrument::from($data, $metadata),
+ 'Zotapay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-3' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-4' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-5' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-6' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-7' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-8' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bank-transfer-9' => AlternativePaymentInstrument::from($data, $metadata),
+ 'bitcoin' => AlternativePaymentInstrument::from($data, $metadata),
+ 'cash-deposit' => AlternativePaymentInstrument::from($data, $metadata),
+ 'cryptocurrency' => AlternativePaymentInstrument::from($data, $metadata),
+ 'domestic-cards' => AlternativePaymentInstrument::from($data, $metadata),
+ 'e-wallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ePay.bg' => AlternativePaymentInstrument::from($data, $metadata),
+ 'eZeeWallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'echeck' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ecoPayz' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ecoPayzTurkey' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ecoVoucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'ezyEFT' => AlternativePaymentInstrument::from($data, $metadata),
+ 'iCashOne Voucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'iDEAL' => AlternativePaymentInstrument::from($data, $metadata),
+ 'iDebit' => AlternativePaymentInstrument::from($data, $metadata),
+ 'iWallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'instant-bank-transfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'invoice' => AlternativePaymentInstrument::from($data, $metadata),
+ 'jpay' => AlternativePaymentInstrument::from($data, $metadata),
+ 'loonie' => AlternativePaymentInstrument::from($data, $metadata),
+ 'miscellaneous' => AlternativePaymentInstrument::from($data, $metadata),
+ 'online-bank-transfer' => AlternativePaymentInstrument::from($data, $metadata),
+ 'oriental-wallet' => AlternativePaymentInstrument::from($data, $metadata),
+ 'phone' => AlternativePaymentInstrument::from($data, $metadata),
+ 'rapyd-checkout' => AlternativePaymentInstrument::from($data, $metadata),
+ 'rebilly-hosted-payment-form' => AlternativePaymentInstrument::from($data, $metadata),
+ 'reverse-withdrawal' => AlternativePaymentInstrument::from($data, $metadata),
+ 'swift-dbt' => AlternativePaymentInstrument::from($data, $metadata),
+ 'voucher' => AlternativePaymentInstrument::from($data, $metadata),
+ 'voucher-2' => AlternativePaymentInstrument::from($data, $metadata),
+ 'voucher-3' => AlternativePaymentInstrument::from($data, $metadata),
+ 'voucher-4' => AlternativePaymentInstrument::from($data, $metadata),
+ 'cash' => CashInstrument::from($data, $metadata),
+ 'check' => CheckInstrument::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/TransactionQuery.php b/src/Model/TransactionQuery.php
index 7b0713933..f5dc29293 100644
--- a/src/Model/TransactionQuery.php
+++ b/src/Model/TransactionQuery.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionQuery implements JsonSerializable
{
+ use HasMetadata;
+
public const RESULT_ABANDONED = 'abandoned';
public const RESULT_APPROVED = 'approved';
@@ -62,7 +65,7 @@ class TransactionQuery implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('transactionId', $data)) {
$this->setTransactionId($data['transactionId']);
@@ -79,11 +82,12 @@ public function __construct(array $data = [])
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTransactionId(): ?string
diff --git a/src/Model/TransactionRefund.php b/src/Model/TransactionRefund.php
index f1231b620..71a9560a4 100644
--- a/src/Model/TransactionRefund.php
+++ b/src/Model/TransactionRefund.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionRefund implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('isProcessedOutside', $data)) {
$this->setIsProcessedOutside($data['isProcessedOutside']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAmount(): float
diff --git a/src/Model/TransactionTimeline.php b/src/Model/TransactionTimeline.php
index f09227679..59208a8cc 100644
--- a/src/Model/TransactionTimeline.php
+++ b/src/Model/TransactionTimeline.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionTimeline implements JsonSerializable
{
+ use HasMetadata;
+
public const TYPE_AMOUNT_ADJUSTED = 'amount-adjusted';
public const TYPE_BLOCKLIST_MATCHED = 'blocklist-matched';
@@ -128,7 +131,7 @@ class TransactionTimeline implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -151,11 +154,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/TransactionUpdate.php b/src/Model/TransactionUpdate.php
index e4a510899..929f9d58a 100644
--- a/src/Model/TransactionUpdate.php
+++ b/src/Model/TransactionUpdate.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionUpdate implements JsonSerializable
{
+ use HasMetadata;
+
public const RESULT_ABANDONED = 'abandoned';
public const RESULT_APPROVED = 'approved';
@@ -28,7 +31,7 @@ class TransactionUpdate implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('result', $data)) {
$this->setResult($data['result']);
@@ -39,11 +42,12 @@ public function __construct(array $data = [])
if (array_key_exists('currency', $data)) {
$this->setCurrency($data['currency']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResult(): string
diff --git a/src/Model/TransactionsDataExport.php b/src/Model/TransactionsDataExport.php
index 898e831d5..206f3a3c0 100644
--- a/src/Model/TransactionsDataExport.php
+++ b/src/Model/TransactionsDataExport.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionsDataExport implements DataExport
{
+ use HasMetadata;
+
public const FORMAT_CSV = 'csv';
public const FORMAT_JSON = 'json';
@@ -37,7 +40,7 @@ class TransactionsDataExport implements DataExport
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -90,11 +93,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getResource(): string
@@ -234,15 +238,15 @@ public function getStatus(): ?string
return $this->fields['status'] ?? null;
}
- public function getDateRange(): ?DataExportDateRange
+ public function getDateRange(): ?TransactionsDataExportDateRange
{
return $this->fields['dateRange'] ?? null;
}
- public function setDateRange(null|DataExportDateRange|array $dateRange): static
+ public function setDateRange(null|TransactionsDataExportDateRange|array $dateRange): static
{
- if ($dateRange !== null && !($dateRange instanceof DataExportDateRange)) {
- $dateRange = DataExportDateRange::from($dateRange);
+ if ($dateRange !== null && !($dateRange instanceof TransactionsDataExportDateRange)) {
+ $dateRange = TransactionsDataExportDateRange::from($dateRange);
}
$this->fields['dateRange'] = $dateRange;
diff --git a/src/Model/TransactionsDataExportDateRange.php b/src/Model/TransactionsDataExportDateRange.php
new file mode 100644
index 000000000..6671fc7fc
--- /dev/null
+++ b/src/Model/TransactionsDataExportDateRange.php
@@ -0,0 +1,96 @@
+setStart($data['start']);
+ }
+ if (array_key_exists('end', $data)) {
+ $this->setEnd($data['end']);
+ }
+ if (array_key_exists('field', $data)) {
+ $this->setField($data['field']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getStart(): string
+ {
+ return $this->fields['start'];
+ }
+
+ public function setStart(string $start): static
+ {
+ $this->fields['start'] = $start;
+
+ return $this;
+ }
+
+ public function getEnd(): string
+ {
+ return $this->fields['end'];
+ }
+
+ public function setEnd(string $end): static
+ {
+ $this->fields['end'] = $end;
+
+ return $this;
+ }
+
+ public function getField(): ?string
+ {
+ return $this->fields['field'] ?? null;
+ }
+
+ public function setField(null|string $field): static
+ {
+ $this->fields['field'] = $field;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('start', $this->fields)) {
+ $data['start'] = $this->fields['start'];
+ }
+ if (array_key_exists('end', $this->fields)) {
+ $data['end'] = $this->fields['end'];
+ }
+ if (array_key_exists('field', $this->fields)) {
+ $data['field'] = $this->fields['field'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/TransactionsDataExportEmbedded.php b/src/Model/TransactionsDataExportEmbedded.php
index be444bcfc..90fb8f49c 100644
--- a/src/Model/TransactionsDataExportEmbedded.php
+++ b/src/Model/TransactionsDataExportEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TransactionsDataExportEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('file', $data)) {
$this->setFile($data['file']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('user', $data)) {
$this->setUser($data['user']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getFile(): ?File
diff --git a/src/Model/TrialOnlyPlan.php b/src/Model/TrialOnlyPlan.php
index 36442a5f3..2b6d9e93e 100644
--- a/src/Model/TrialOnlyPlan.php
+++ b/src/Model/TrialOnlyPlan.php
@@ -16,12 +16,15 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class TrialOnlyPlan implements Plan, FlexiblePlan
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -77,16 +80,17 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
- public function getId(): ?string
+ public function getId(): string
{
- return $this->fields['id'] ?? null;
+ return $this->fields['id'];
}
public function getName(): string
@@ -243,17 +247,6 @@ public function getInvoiceTimeShift(): ?InvoiceTimeShift
return $this->fields['invoiceTimeShift'] ?? null;
}
- public function setInvoiceTimeShift(null|InvoiceTimeShift|array $invoiceTimeShift): static
- {
- if ($invoiceTimeShift !== null && !($invoiceTimeShift instanceof InvoiceTimeShift)) {
- $invoiceTimeShift = InvoiceTimeShift::from($invoiceTimeShift);
- }
-
- $this->fields['invoiceTimeShift'] = $invoiceTimeShift;
-
- return $this;
- }
-
public function getCreatedTime(): ?DateTimeImmutable
{
return $this->fields['createdTime'] ?? null;
@@ -338,7 +331,7 @@ public function jsonSerialize(): array
return $data;
}
- private function setId(null|string $id): static
+ private function setId(string $id): static
{
$this->fields['id'] = $id;
@@ -366,6 +359,17 @@ private function setIsTrialOnly(null|bool $isTrialOnly): static
return $this;
}
+ private function setInvoiceTimeShift(null|InvoiceTimeShift|array $invoiceTimeShift): static
+ {
+ if ($invoiceTimeShift !== null && !($invoiceTimeShift instanceof InvoiceTimeShift)) {
+ $invoiceTimeShift = InvoiceTimeShift::from($invoiceTimeShift);
+ }
+
+ $this->fields['invoiceTimeShift'] = $invoiceTimeShift;
+
+ return $this;
+ }
+
private function setCreatedTime(null|DateTimeImmutable|string $createdTime): static
{
if ($createdTime !== null && !($createdTime instanceof DateTimeImmutable)) {
diff --git a/src/Model/Triple000.php b/src/Model/Triple000.php
index 74e2d5f47..7ddeae280 100644
--- a/src/Model/Triple000.php
+++ b/src/Model/Triple000.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Triple000 extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Triple000',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): Triple000Credentials
diff --git a/src/Model/Triple000Credentials.php b/src/Model/Triple000Credentials.php
index 8a0eb8190..0af732df3 100644
--- a/src/Model/Triple000Credentials.php
+++ b/src/Model/Triple000Credentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Triple000Credentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretWord', $data)) {
$this->setSecretWord($data['secretWord']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/Truevo.php b/src/Model/Truevo.php
index 2ec2d4e34..175e64d0c 100644
--- a/src/Model/Truevo.php
+++ b/src/Model/Truevo.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Truevo extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Truevo',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): TruevoCredentials
diff --git a/src/Model/TruevoCredentials.php b/src/Model/TruevoCredentials.php
index 8e49ace33..218f73df4 100644
--- a/src/Model/TruevoCredentials.php
+++ b/src/Model/TruevoCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TruevoCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('mid', $data)) {
$this->setMid($data['mid']);
@@ -46,11 +49,12 @@ public function __construct(array $data = [])
if (array_key_exists('ipnSecret', $data)) {
$this->setIpnSecret($data['ipnSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMid(): string
diff --git a/src/Model/Trustly.php b/src/Model/Trustly.php
index eca15d7af..071497376 100644
--- a/src/Model/Trustly.php
+++ b/src/Model/Trustly.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Trustly extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Trustly',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): TrustlyCredentials
diff --git a/src/Model/TrustlyCredentials.php b/src/Model/TrustlyCredentials.php
index 300211614..da11686a5 100644
--- a/src/Model/TrustlyCredentials.php
+++ b/src/Model/TrustlyCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TrustlyCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('privateKey', $data)) {
$this->setPrivateKey($data['privateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/TrustsPay.php b/src/Model/TrustsPay.php
index 7480c64e0..894f19133 100644
--- a/src/Model/TrustsPay.php
+++ b/src/Model/TrustsPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class TrustsPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'TrustsPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): TrustsPayCredentials
diff --git a/src/Model/TrustsPayCredentials.php b/src/Model/TrustsPayCredentials.php
index 0697e0889..43ed03d85 100644
--- a/src/Model/TrustsPayCredentials.php
+++ b/src/Model/TrustsPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TrustsPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantNo', $data)) {
$this->setMerchantNo($data['merchantNo']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('signkey', $data)) {
$this->setSignkey($data['signkey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantNo(): string
diff --git a/src/Model/TwoColumnsTimelineTable.php b/src/Model/TwoColumnsTimelineTable.php
index 70d18b746..06476b523 100644
--- a/src/Model/TwoColumnsTimelineTable.php
+++ b/src/Model/TwoColumnsTimelineTable.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class TwoColumnsTimelineTable extends TimelineTable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'type' => 'two-columns',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('data', $data)) {
$this->setData($data['data']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/TwoColumnsTimelineTableData.php b/src/Model/TwoColumnsTimelineTableData.php
index e8e67eb22..fd6d31e9a 100644
--- a/src/Model/TwoColumnsTimelineTableData.php
+++ b/src/Model/TwoColumnsTimelineTableData.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class TwoColumnsTimelineTableData implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('attribute', $data)) {
$this->setAttribute($data['attribute']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('value', $data)) {
$this->setValue($data['value']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getAttribute(): ?string
diff --git a/src/Model/UPayCard.php b/src/Model/UPayCard.php
index 55b5f8381..3f2c0ba07 100644
--- a/src/Model/UPayCard.php
+++ b/src/Model/UPayCard.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class UPayCard extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'UPayCard',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): UPayCardCredentials
diff --git a/src/Model/UPayCardCredentials.php b/src/Model/UPayCardCredentials.php
index ff9841b3c..1e48e940b 100644
--- a/src/Model/UPayCardCredentials.php
+++ b/src/Model/UPayCardCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UPayCardCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('receiver_account', $data)) {
$this->setReceiverAccount($data['receiver_account']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('secret', $data)) {
$this->setSecret($data['secret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getReceiverAccount(): string
diff --git a/src/Model/UPayCardSettings.php b/src/Model/UPayCardSettings.php
index 1eb0af9b5..3fabb05a5 100644
--- a/src/Model/UPayCardSettings.php
+++ b/src/Model/UPayCardSettings.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UPayCardSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('tolerancePercentage', $data)) {
$this->setTolerancePercentage($data['tolerancePercentage']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTolerancePercentage(): int
diff --git a/src/Model/USAePay.php b/src/Model/USAePay.php
index 318b49439..e2c48a214 100644
--- a/src/Model/USAePay.php
+++ b/src/Model/USAePay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class USAePay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'USAePay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): USAePayCredentials
diff --git a/src/Model/USAePayCredentials.php b/src/Model/USAePayCredentials.php
index 52ba4c789..caf2c1d53 100644
--- a/src/Model/USAePayCredentials.php
+++ b/src/Model/USAePayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class USAePayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sourceKey', $data)) {
$this->setSourceKey($data['sourceKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('pin', $data)) {
$this->setPin($data['pin']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSourceKey(): string
diff --git a/src/Model/Unlimit.php b/src/Model/Unlimit.php
index 16b8dc996..640bc6ac5 100644
--- a/src/Model/Unlimit.php
+++ b/src/Model/Unlimit.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Unlimit extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Unlimit',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): UnlimitCredentials
diff --git a/src/Model/UnlimitCredentials.php b/src/Model/UnlimitCredentials.php
index 72043faba..a00fb8b4d 100644
--- a/src/Model/UnlimitCredentials.php
+++ b/src/Model/UnlimitCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UnlimitCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('terminalId', $data)) {
$this->setTerminalId($data['terminalId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('ipnSecret', $data)) {
$this->setIpnSecret($data['ipnSecret']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTerminalId(): string
diff --git a/src/Model/UpcomingInvoice.php b/src/Model/UpcomingInvoice.php
index af900d8ba..df271bcac 100644
--- a/src/Model/UpcomingInvoice.php
+++ b/src/Model/UpcomingInvoice.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UpcomingInvoice implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -99,11 +102,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/UpcomingInvoiceDiscounts.php b/src/Model/UpcomingInvoiceDiscounts.php
index b1bc5f09e..22991c2af 100644
--- a/src/Model/UpcomingInvoiceDiscounts.php
+++ b/src/Model/UpcomingInvoiceDiscounts.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UpcomingInvoiceDiscounts implements JsonSerializable
{
+ use HasMetadata;
+
public const CONTEXT_ITEMS = 'items';
public const CONTEXT_SHIPPING = 'shipping';
@@ -26,7 +29,7 @@ class UpcomingInvoiceDiscounts implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('couponId', $data)) {
$this->setCouponId($data['couponId']);
@@ -43,11 +46,12 @@ public function __construct(array $data = [])
if (array_key_exists('context', $data)) {
$this->setContext($data['context']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCouponId(): ?string
diff --git a/src/Model/UpcomingInvoiceEmbedded.php b/src/Model/UpcomingInvoiceEmbedded.php
index 309306c2d..69e2d032f 100644
--- a/src/Model/UpcomingInvoiceEmbedded.php
+++ b/src/Model/UpcomingInvoiceEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UpcomingInvoiceEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('customer', $data)) {
$this->setCustomer($data['customer']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('leadSource', $data)) {
$this->setLeadSource($data['leadSource']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCustomer(): ?Customer
diff --git a/src/Model/UpcomingInvoiceItem.php b/src/Model/UpcomingInvoiceItem.php
index 5c74aad46..8702f27df 100644
--- a/src/Model/UpcomingInvoiceItem.php
+++ b/src/Model/UpcomingInvoiceItem.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UpcomingInvoiceItem implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -75,11 +78,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/UpcomingInvoiceItemEmbedded.php b/src/Model/UpcomingInvoiceItemEmbedded.php
index fccdf0296..c9430aeda 100644
--- a/src/Model/UpcomingInvoiceItemEmbedded.php
+++ b/src/Model/UpcomingInvoiceItemEmbedded.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UpcomingInvoiceItemEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('product', $data)) {
$this->setProduct($data['product']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('plan', $data)) {
$this->setPlan($data['plan']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getProduct(): ?Product
diff --git a/src/Model/Usage.php b/src/Model/Usage.php
index e4c08b851..16c651419 100644
--- a/src/Model/Usage.php
+++ b/src/Model/Usage.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Usage implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -54,11 +57,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/UsageLimits.php b/src/Model/UsageLimits.php
index 3944c906a..326448c67 100644
--- a/src/Model/UsageLimits.php
+++ b/src/Model/UsageLimits.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UsageLimits implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('softLimit', $data)) {
$this->setSoftLimit($data['softLimit']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('trialLimit', $data)) {
$this->setTrialLimit($data['trialLimit']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSoftLimit(): ?UsageLimitsSoftLimit
diff --git a/src/Model/UsageLimitsHardLimit.php b/src/Model/UsageLimitsHardLimit.php
index 5bcc0257d..b3b1d3496 100644
--- a/src/Model/UsageLimitsHardLimit.php
+++ b/src/Model/UsageLimitsHardLimit.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UsageLimitsHardLimit implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getQuantity(): ?int
diff --git a/src/Model/UsageLimitsSoftLimit.php b/src/Model/UsageLimitsSoftLimit.php
index 789b749f3..9a23898f5 100644
--- a/src/Model/UsageLimitsSoftLimit.php
+++ b/src/Model/UsageLimitsSoftLimit.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UsageLimitsSoftLimit implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('quantity', $data)) {
$this->setQuantity($data['quantity']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('amount', $data)) {
$this->setAmount($data['amount']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getQuantity(): ?int
diff --git a/src/Model/UsageStatus.php b/src/Model/UsageStatus.php
index 9a1d25588..6dfd1344d 100644
--- a/src/Model/UsageStatus.php
+++ b/src/Model/UsageStatus.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UsageStatus implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('isSoftLimitReached', $data)) {
$this->setIsSoftLimitReached($data['isSoftLimitReached']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('isTrialLimitReached', $data)) {
$this->setIsTrialLimitReached($data['isTrialLimitReached']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getIsSoftLimitReached(): ?bool
diff --git a/src/Model/User.php b/src/Model/User.php
index af11cdfba..20833fdf6 100644
--- a/src/Model/User.php
+++ b/src/Model/User.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class User implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -28,7 +31,7 @@ class User implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -87,11 +90,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/UserApplication.php b/src/Model/UserApplication.php
index 03513b861..f6074bc6d 100644
--- a/src/Model/UserApplication.php
+++ b/src/Model/UserApplication.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UserApplication implements JsonSerializable
{
+ use HasMetadata;
+
public const STATUS_PENDING_APPROVAL = 'pending-approval';
public const STATUS_AVAILABLE = 'available';
@@ -84,7 +87,7 @@ class UserApplication implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -134,11 +137,12 @@ public function __construct(array $data = [])
if (array_key_exists('_embedded', $data)) {
$this->setEmbedded($data['_embedded']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/UserApplicationEmbedded.php b/src/Model/UserApplicationEmbedded.php
index f320cd4af..1a5622bba 100644
--- a/src/Model/UserApplicationEmbedded.php
+++ b/src/Model/UserApplicationEmbedded.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class UserApplicationEmbedded implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('applicationInstance', $data)) {
$this->setApplicationInstance($data['applicationInstance']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getApplicationInstance(): ?ApplicationInstance
diff --git a/src/Model/VCreditos.php b/src/Model/VCreditos.php
index 4e2ec9ba8..7d8e14516 100644
--- a/src/Model/VCreditos.php
+++ b/src/Model/VCreditos.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class VCreditos extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'VCreditos',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): VCreditosCredentials
diff --git a/src/Model/VCreditosCredentials.php b/src/Model/VCreditosCredentials.php
index 830e1cd9f..604557b9f 100644
--- a/src/Model/VCreditosCredentials.php
+++ b/src/Model/VCreditosCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class VCreditosCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('publicKey', $data)) {
$this->setPublicKey($data['publicKey']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('secretKey', $data)) {
$this->setSecretKey($data['secretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPublicKey(): string
diff --git a/src/Model/VCreditosSettings.php b/src/Model/VCreditosSettings.php
index 2013b6737..5c0a66bb8 100644
--- a/src/Model/VCreditosSettings.php
+++ b/src/Model/VCreditosSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class VCreditosSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantWebsiteLoginLabel', $data)) {
$this->setMerchantWebsiteLoginLabel($data['merchantWebsiteLoginLabel']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantWebsiteLoginDescription', $data)) {
$this->setMerchantWebsiteLoginDescription($data['merchantWebsiteLoginDescription']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantWebsiteLoginLabel(): ?string
diff --git a/src/Model/ValueList.php b/src/Model/ValueList.php
index 6dc747f9e..983426b03 100644
--- a/src/Model/ValueList.php
+++ b/src/Model/ValueList.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ValueList implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -45,11 +48,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/VantivLitle.php b/src/Model/VantivLitle.php
index 570bb61d7..7f2da9334 100644
--- a/src/Model/VantivLitle.php
+++ b/src/Model/VantivLitle.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class VantivLitle extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'VantivLitle',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): VantivLitleCredentials
diff --git a/src/Model/VantivLitleCredentials.php b/src/Model/VantivLitleCredentials.php
index ec15acea2..285d9a138 100644
--- a/src/Model/VantivLitleCredentials.php
+++ b/src/Model/VantivLitleCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class VantivLitleCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getUsername(): string
diff --git a/src/Model/VaultedInstrument.php b/src/Model/VaultedInstrument.php
index 90b1d736d..26e1bb0c2 100644
--- a/src/Model/VaultedInstrument.php
+++ b/src/Model/VaultedInstrument.php
@@ -14,401 +14,21 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class VaultedInstrument implements CustomerDefaultPaymentInstrument, TransactionPaymentInstrument
{
+ use HasMetadata;
+
public const METHOD_PAYMENT_CARD = 'payment-card';
public const METHOD_ACH = 'ach';
- public const METHOD_CASH = 'cash';
-
- public const METHOD_CHECK = 'check';
-
public const METHOD_PAYPAL = 'paypal';
- public const METHOD_ADV_CASH = 'AdvCash';
-
- public const METHOD_AERA = 'Aera';
-
- public const METHOD_AFFIRM = 'Affirm';
-
- public const METHOD_AFTERPAY = 'Afterpay';
-
- public const METHOD_AIRCASH = 'Aircash';
-
- public const METHOD_AIRPAY = 'Airpay';
-
- public const METHOD_ALFA_CLICK = 'Alfa-click';
-
- public const METHOD_ALIPAY = 'Alipay';
-
- public const METHOD_AMAZON_PAY = 'AmazonPay';
-
- public const METHOD_APPLE_PAY = 'Apple Pay';
-
- public const METHOD_ASTRO_PAY_CARD = 'AstroPay Card';
-
- public const METHOD_ASTRO_PAY_GO = 'AstroPay-GO';
-
- public const METHOD_BANK_SEND = 'BankSEND';
-
- public const METHOD_BANK_REFERENCED = 'BankReferenced';
-
- public const METHOD_BANK_TRANSFER = 'bank-transfer';
-
- public const METHOD_BANK_TRANSFER2 = 'bank-transfer-2';
-
- public const METHOD_BANK_TRANSFER3 = 'bank-transfer-3';
-
- public const METHOD_BANK_TRANSFER4 = 'bank-transfer-4';
-
- public const METHOD_BANK_TRANSFER5 = 'bank-transfer-5';
-
- public const METHOD_BANK_TRANSFER6 = 'bank-transfer-6';
-
- public const METHOD_BANK_TRANSFER7 = 'bank-transfer-7';
-
- public const METHOD_BANK_TRANSFER8 = 'bank-transfer-8';
-
- public const METHOD_BANK_TRANSFER9 = 'bank-transfer-9';
-
- public const METHOD_BALOTO = 'Baloto';
-
- public const METHOD_BEELINE = 'Beeline';
-
- public const METHOD_BELFIUS_DIRECT_NET = 'Belfius-direct-net';
-
- public const METHOD_BITCOIN = 'bitcoin';
-
- public const METHOD_BIZUM = 'Bizum';
-
- public const METHOD_BLIK = 'Blik';
-
- public const METHOD_BOLETO = 'Boleto';
-
- public const METHOD_BOLETO2 = 'Boleto-2';
-
- public const METHOD_BOLETO3 = 'Boleto-3';
-
- public const METHOD_CASH_DEPOSIT = 'cash-deposit';
-
- public const METHOD_CAS_HLIB = 'CASHlib';
-
- public const METHOD_CASH_TO_CODE = 'CashToCode';
-
- public const METHOD_CC_AVENUE = 'CCAvenue';
-
- public const METHOD_CHINA_UNION_PAY = 'China UnionPay';
-
- public const METHOD_CLEARPAY = 'Clearpay';
-
- public const METHOD_CLEO = 'Cleo';
-
- public const METHOD_COD_VOUCHER = 'CODVoucher';
-
- public const METHOD_CONEKTA_OXXO = 'Conekta-oxxo';
-
- public const METHOD_CONEKTA_SPEI = 'Conekta-spei';
-
- public const METHOD_CRYPTOCURRENCY = 'cryptocurrency';
-
- public const METHOD_CUPON_DE_PAGOS = 'Cupon-de-pagos';
-
- public const METHOD_CYBER_SOURCE = 'CyberSource';
-
- public const METHOD_DIMOCO_PAY_SMART = 'Dimoco-pay-smart';
-
- public const METHOD_DIRECTA24_CARD = 'Directa24Card';
-
- public const METHOD_DOMESTIC_CARDS = 'domestic-cards';
-
- public const METHOD_EFECTY = 'Efecty';
-
- public const METHOD_ECHECK = 'echeck';
-
- public const METHOD_ECO_PAYZ = 'ecoPayz';
-
- public const METHOD_ECO_PAYZ_TURKEY = 'ecoPayzTurkey';
-
- public const METHOD_ECO_VOUCHER = 'ecoVoucher';
-
- public const METHOD_EPS = 'EPS';
-
- public const METHOD_E_PAY_BG = 'ePay.bg';
-
- public const METHOD_ETHEREUM = 'Ethereum';
-
- public const METHOD_E_WALLET = 'e-wallet';
-
- public const METHOD_EZY_EFT = 'ezyEFT';
-
- public const METHOD_E_ZEE_WALLET = 'eZeeWallet';
-
- public const METHOD_FASTER_PAY = 'FasterPay';
-
- public const METHOD_FLEXEPIN = 'Flexepin';
-
- public const METHOD_GIROPAY = 'Giropay';
-
- public const METHOD_GOOGLE_PAY = 'Google Pay';
-
- public const METHOD_GPAYSAFE = 'Gpaysafe';
-
- public const METHOD_I_CASH_ONE_VOUCHER = 'iCashOne Voucher';
-
- public const METHOD_I_DEBIT = 'iDebit';
-
- public const METHOD_I_DEAL = 'iDEAL';
-
- public const METHOD_ING_HOMEPAY = 'ING-homepay';
-
- public const METHOD_INOVAPAY_PIN = 'INOVAPAY-pin';
-
- public const METHOD_INOVAPAY_WALLET = 'INOVAPAY-wallet';
-
- public const METHOD_INSTA_DEBIT = 'InstaDebit';
-
- public const METHOD_INSTANT_PAYMENTS = 'InstantPayments';
-
- public const METHOD_INSTANT_BANK_TRANSFER = 'instant-bank-transfer';
-
- public const METHOD_INTERAC_ONLINE = 'Interac-online';
-
- public const METHOD_INTERAC_E_TRANSFER = 'Interac-eTransfer';
-
- public const METHOD_INTERAC_EXPRESS_CONNECT = 'Interac-express-connect';
-
- public const METHOD_INTERAC = 'Interac';
-
- public const METHOD_INVOICE = 'invoice';
-
- public const METHOD_I_WALLET = 'iWallet';
-
- public const METHOD_JETON = 'Jeton';
-
- public const METHOD_JETON_CASH = 'JetonCash';
-
- public const METHOD_JPAY = 'jpay';
-
- public const METHOD_KAKAO_PAY = 'KakaoPay';
-
- public const METHOD_KHELOCARD = 'Khelocard';
-
- public const METHOD_KLARNA = 'Klarna';
-
- public const METHOD_KNOT = 'KNOT';
-
- public const METHOD_LITECOIN = 'Litecoin';
-
- public const METHOD_LOONIE = 'loonie';
-
- public const METHOD_LPG_ONLINE = 'LPG-online';
-
- public const METHOD_LPG_PAYMENT_CARD = 'LPG-payment-card';
-
- public const METHOD_MATRIX = 'Matrix';
-
- public const METHOD_MAXI_CASH = 'MaxiCash';
-
- public const METHOD_MEGAFON = 'Megafon';
-
- public const METHOD_MERCADO_PAGO = 'MercadoPago';
-
- public const METHOD_MI_FINITY_E_WALLET = 'MiFinity-eWallet';
-
- public const METHOD_MISCELLANEOUS = 'miscellaneous';
-
- public const METHOD_MOBILE_PAY = 'MobilePay';
-
- public const METHOD_MULTIBANCO = 'Multibanco';
-
- public const METHOD_BANCONTACT = 'Bancontact';
-
- public const METHOD_BANCONTACT_MOBILE = 'Bancontact-mobile';
-
- public const METHOD_MTS = 'MTS';
-
- public const METHOD_MUCH_BETTER = 'MuchBetter';
-
- public const METHOD_MUCH_BETTER_VOUCHER = 'MuchBetterVoucher';
-
- public const METHOD_MY_FATOORAH = 'MyFatoorah';
-
- public const METHOD_NEOSURF = 'Neosurf';
-
- public const METHOD_NETBANKING = 'Netbanking';
-
- public const METHOD_NETELLER = 'Neteller';
-
- public const METHOD_NORDEA_SOLO = 'Nordea-Solo';
-
- public const METHOD_NORDIK_COIN = 'NordikCoin';
-
- public const METHOD_OCHA_PAY = 'OchaPay';
-
- public const METHOD_ONLINE_BANK_TRANSFER = 'online-bank-transfer';
-
- public const METHOD_ONLINEUEBERWEISEN = 'Onlineueberweisen';
-
- public const METHOD_ORIENTAL_WALLET = 'oriental-wallet';
-
- public const METHOD_OXXO = 'OXXO';
-
- public const METHOD_P24 = 'P24';
-
- public const METHOD_PAGADITO = 'Pagadito';
-
- public const METHOD_PAGO_EFFECTIVO = 'PagoEffectivo';
-
- public const METHOD_PAGSMILE_LOTTERY = 'Pagsmile-lottery';
-
- public const METHOD_PAGSMILE_DEPOSIT_EXPRESS = 'Pagsmile-deposit-express';
-
- public const METHOD_PAY_CASH = 'PayCash';
-
- public const METHOD_PAYCO = 'Payco';
-
- public const METHOD_PAYEER = 'Payeer';
-
- public const METHOD_PAYMENT_ASIA_CRYPTO = 'PaymentAsia-crypto';
-
- public const METHOD_PAYSAFECARD = 'Paysafecard';
-
- public const METHOD_PAY_TABS = 'PayTabs';
-
- public const METHOD_PAY4_FUN = 'Pay4Fun';
-
- public const METHOD_PAYNOTE = 'Paynote';
-
- public const METHOD_PAYMERO = 'Paymero';
-
- public const METHOD_PAYMERO_QR = 'Paymero-QR';
-
- public const METHOD_PAY_U = 'PayU';
-
- public const METHOD_PAY_U_LATAM = 'PayULatam';
-
- public const METHOD_PERFECT_MONEY = 'Perfect-money';
-
- public const METHOD_PIASTRIX = 'Piastrix';
-
- public const METHOD_PIX = 'PIX';
-
- public const METHOD_PIN_PAY = 'PinPay';
-
- public const METHOD_PHONE = 'phone';
-
- public const METHOD_PHONE_PE = 'PhonePe';
-
- public const METHOD_PO_LI = 'POLi';
-
- public const METHOD_POST_FINANCE_CARD = 'PostFinance-card';
-
- public const METHOD_POST_FINANCE_E_FINANCE = 'PostFinance-e-finance';
-
- public const METHOD_QIWI = 'QIWI';
-
- public const METHOD_Q_PAY = 'QPay';
-
- public const METHOD_QQ_PAY = 'QQPay';
-
- public const METHOD_RAPYD_CHECKOUT = 'rapyd-checkout';
-
- public const METHOD_REBILLY_HOSTED_PAYMENT_FORM = 'rebilly-hosted-payment-form';
-
- public const METHOD_RESURS = 'Resurs';
-
- public const METHOD_REVERSE_WITHDRAWAL = 'reverse-withdrawal';
-
- public const METHOD_RIPPLE = 'Ripple';
-
- public const METHOD_SAFETY_PAY = 'SafetyPay';
-
- public const METHOD_SAMSUNG_PAY = 'Samsung Pay';
-
- public const METHOD_SEPA = 'SEPA';
-
- public const METHOD_SIIRTO = 'Siirto';
-
- public const METHOD_SKRILL = 'Skrill';
-
- public const METHOD_SKRILL_RAPID_TRANSFER = 'Skrill Rapid Transfer';
-
- public const METHOD_SMS_VOUCHER = 'SMSVoucher';
-
- public const METHOD_SOFORT = 'Sofort';
-
- public const METHOD_SPARK_PAY = 'SparkPay';
-
- public const METHOD_SPEI = 'SPEI';
-
- public const METHOD_SWIFT_DBT = 'swift-dbt';
-
- public const METHOD_TELE2 = 'Tele2';
-
- public const METHOD_TELR = 'Telr';
-
- public const METHOD_TERMINALY_RF = 'Terminaly-RF';
-
- public const METHOD_TETHER = 'Tether';
-
- public const METHOD_TODITO_CASH_CARD = 'ToditoCash-card';
-
- public const METHOD_TRUSTLY = 'Trustly';
-
- public const METHOD_TUPAY = 'Tupay';
-
- public const METHOD_TWINT = 'TWINT';
-
- public const METHOD_UNI_CRYPT = 'UniCrypt';
-
- public const METHOD_U_PAY_CARD = 'UPayCard';
-
- public const METHOD_UPI = 'UPI';
-
- public const METHOD_USD_COIN = 'USD-coin';
-
- public const METHOD_V_CREDITOS = 'VCreditos';
-
- public const METHOD_VEGA_WALLET = 'VegaWallet';
-
- public const METHOD_VENUS_POINT = 'VenusPoint';
-
- public const METHOD_VOUCHER = 'voucher';
-
- public const METHOD_VOUCHER2 = 'voucher-2';
-
- public const METHOD_VOUCHER3 = 'voucher-3';
-
- public const METHOD_VOUCHER4 = 'voucher-4';
-
- public const METHOD_WALLET88 = 'Wallet88';
-
- public const METHOD_WEBMONEY = 'Webmoney';
-
- public const METHOD_WEBPAY = 'Webpay';
-
- public const METHOD_WEBPAY2 = 'Webpay-2';
-
- public const METHOD_WEBPAY_CARD = 'Webpay Card';
-
- public const METHOD_WE_CHAT_PAY = 'WeChat Pay';
-
- public const METHOD_X_PAY_P2_P = 'XPay-P2P';
-
- public const METHOD_X_PAY_QR = 'XPay-QR';
-
- public const METHOD_YANDEX_MONEY = 'Yandex-money';
-
- public const METHOD_ZOTAPAY = 'Zotapay';
-
- public const METHOD_ZIMPLER = 'Zimpler';
-
- public const METHOD_ZIP = 'Zip';
-
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('method', $data)) {
$this->setMethod($data['method']);
@@ -416,11 +36,12 @@ public function __construct(array $data = [])
if (array_key_exists('paymentInstrumentId', $data)) {
$this->setPaymentInstrumentId($data['paymentInstrumentId']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMethod(): string
diff --git a/src/Model/VegaWallet.php b/src/Model/VegaWallet.php
index a633219af..343af7cae 100644
--- a/src/Model/VegaWallet.php
+++ b/src/Model/VegaWallet.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class VegaWallet extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'VegaWallet',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): VegaWalletCredentials
diff --git a/src/Model/VegaWalletCredentials.php b/src/Model/VegaWalletCredentials.php
index 0f32dba01..59328c556 100644
--- a/src/Model/VegaWalletCredentials.php
+++ b/src/Model/VegaWalletCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class VegaWalletCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,15 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ if (array_key_exists('payoutPassword', $data)) {
+ $this->setPayoutPassword($data['payoutPassword']);
+ }
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
@@ -59,6 +66,18 @@ public function setPassword(string $password): static
return $this;
}
+ public function getPayoutPassword(): ?string
+ {
+ return $this->fields['payoutPassword'] ?? null;
+ }
+
+ public function setPayoutPassword(null|string $payoutPassword): static
+ {
+ $this->fields['payoutPassword'] = $payoutPassword;
+
+ return $this;
+ }
+
public function jsonSerialize(): array
{
$data = [];
@@ -68,6 +87,9 @@ public function jsonSerialize(): array
if (array_key_exists('password', $this->fields)) {
$data['password'] = $this->fields['password'];
}
+ if (array_key_exists('payoutPassword', $this->fields)) {
+ $data['payoutPassword'] = $this->fields['payoutPassword'];
+ }
return $data;
}
diff --git a/src/Model/VegaaH.php b/src/Model/VegaaH.php
index 56589cc90..71e90d0cf 100644
--- a/src/Model/VegaaH.php
+++ b/src/Model/VegaaH.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class VegaaH extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'vegaaH',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): VegaaHCredentials
diff --git a/src/Model/VegaaHCredentials.php b/src/Model/VegaaHCredentials.php
index 7599021a6..4df984c56 100644
--- a/src/Model/VegaaHCredentials.php
+++ b/src/Model/VegaaHCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class VegaaHCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('terminalId', $data)) {
$this->setTerminalId($data['terminalId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTerminalId(): string
diff --git a/src/Model/Viva.php b/src/Model/Viva.php
new file mode 100644
index 000000000..489a46a61
--- /dev/null
+++ b/src/Model/Viva.php
@@ -0,0 +1,89 @@
+ 'Viva',
+ ] + $data, $metadata);
+
+ if (array_key_exists('credentials', $data)) {
+ $this->setCredentials($data['credentials']);
+ }
+ if (array_key_exists('settings', $data)) {
+ $this->setSettings($data['settings']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getCredentials(): VivaCredentials
+ {
+ return $this->fields['credentials'];
+ }
+
+ public function setCredentials(VivaCredentials|array $credentials): static
+ {
+ if (!($credentials instanceof VivaCredentials)) {
+ $credentials = VivaCredentials::from($credentials);
+ }
+
+ $this->fields['credentials'] = $credentials;
+
+ return $this;
+ }
+
+ public function getSettings(): ?VivaSettings
+ {
+ return $this->fields['settings'] ?? null;
+ }
+
+ public function setSettings(null|VivaSettings|array $settings): static
+ {
+ if ($settings !== null && !($settings instanceof VivaSettings)) {
+ $settings = VivaSettings::from($settings);
+ }
+
+ $this->fields['settings'] = $settings;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('credentials', $this->fields)) {
+ $data['credentials'] = $this->fields['credentials']->jsonSerialize();
+ }
+ if (array_key_exists('settings', $this->fields)) {
+ $data['settings'] = $this->fields['settings']?->jsonSerialize();
+ }
+
+ return parent::jsonSerialize() + $data;
+ }
+}
diff --git a/src/Model/VivaCredentials.php b/src/Model/VivaCredentials.php
new file mode 100644
index 000000000..5497c243b
--- /dev/null
+++ b/src/Model/VivaCredentials.php
@@ -0,0 +1,114 @@
+setClientId($data['clientId']);
+ }
+ if (array_key_exists('clientSecret', $data)) {
+ $this->setClientSecret($data['clientSecret']);
+ }
+ if (array_key_exists('merchantId', $data)) {
+ $this->setMerchantId($data['merchantId']);
+ }
+ if (array_key_exists('apiKey', $data)) {
+ $this->setApiKey($data['apiKey']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getClientId(): string
+ {
+ return $this->fields['clientId'];
+ }
+
+ public function setClientId(string $clientId): static
+ {
+ $this->fields['clientId'] = $clientId;
+
+ return $this;
+ }
+
+ public function getClientSecret(): string
+ {
+ return $this->fields['clientSecret'];
+ }
+
+ public function setClientSecret(string $clientSecret): static
+ {
+ $this->fields['clientSecret'] = $clientSecret;
+
+ return $this;
+ }
+
+ public function getMerchantId(): string
+ {
+ return $this->fields['merchantId'];
+ }
+
+ public function setMerchantId(string $merchantId): static
+ {
+ $this->fields['merchantId'] = $merchantId;
+
+ return $this;
+ }
+
+ public function getApiKey(): string
+ {
+ return $this->fields['apiKey'];
+ }
+
+ public function setApiKey(string $apiKey): static
+ {
+ $this->fields['apiKey'] = $apiKey;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('clientId', $this->fields)) {
+ $data['clientId'] = $this->fields['clientId'];
+ }
+ if (array_key_exists('clientSecret', $this->fields)) {
+ $data['clientSecret'] = $this->fields['clientSecret'];
+ }
+ if (array_key_exists('merchantId', $this->fields)) {
+ $data['merchantId'] = $this->fields['merchantId'];
+ }
+ if (array_key_exists('apiKey', $this->fields)) {
+ $data['apiKey'] = $this->fields['apiKey'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/VivaSettings.php b/src/Model/VivaSettings.php
new file mode 100644
index 000000000..553a25e93
--- /dev/null
+++ b/src/Model/VivaSettings.php
@@ -0,0 +1,78 @@
+setSourceCode($data['sourceCode']);
+ }
+ if (array_key_exists('customerTransaction', $data)) {
+ $this->setCustomerTransaction($data['customerTransaction']);
+ }
+ $this->setMetadata($metadata);
+ }
+
+ public static function from(array $data = [], array $metadata = []): self
+ {
+ return new self($data, $metadata);
+ }
+
+ public function getSourceCode(): ?string
+ {
+ return $this->fields['sourceCode'] ?? null;
+ }
+
+ public function setSourceCode(null|string $sourceCode): static
+ {
+ $this->fields['sourceCode'] = $sourceCode;
+
+ return $this;
+ }
+
+ public function getCustomerTransaction(): ?string
+ {
+ return $this->fields['customerTransaction'] ?? null;
+ }
+
+ public function setCustomerTransaction(null|string $customerTransaction): static
+ {
+ $this->fields['customerTransaction'] = $customerTransaction;
+
+ return $this;
+ }
+
+ public function jsonSerialize(): array
+ {
+ $data = [];
+ if (array_key_exists('sourceCode', $this->fields)) {
+ $data['sourceCode'] = $this->fields['sourceCode'];
+ }
+ if (array_key_exists('customerTransaction', $this->fields)) {
+ $data['customerTransaction'] = $this->fields['customerTransaction'];
+ }
+
+ return $data;
+ }
+}
diff --git a/src/Model/Wallet88.php b/src/Model/Wallet88.php
index ea6fb9c62..98393da3c 100644
--- a/src/Model/Wallet88.php
+++ b/src/Model/Wallet88.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Wallet88 extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Wallet88',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -30,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): Wallet88Credentials
diff --git a/src/Model/Wallet88Credentials.php b/src/Model/Wallet88Credentials.php
index 848f05587..a1142a7af 100644
--- a/src/Model/Wallet88Credentials.php
+++ b/src/Model/Wallet88Credentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Wallet88Credentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('sid', $data)) {
$this->setSid($data['sid']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('rcode', $data)) {
$this->setRcode($data['rcode']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getSid(): string
diff --git a/src/Model/Wallet88Settings.php b/src/Model/Wallet88Settings.php
index 808a1dd97..4bf323a74 100644
--- a/src/Model/Wallet88Settings.php
+++ b/src/Model/Wallet88Settings.php
@@ -15,25 +15,29 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Wallet88Settings implements JsonSerializable
{
+ use HasMetadata;
+
public const PAYMENT_CARD_METHOD_CREDITCARD = 'creditcard';
public const PAYMENT_CARD_METHOD_MASTERCARD = 'mastercard';
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('paymentCardMethod', $data)) {
$this->setPaymentCardMethod($data['paymentCardMethod']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getPaymentCardMethod(): ?string
diff --git a/src/Model/Walpay.php b/src/Model/Walpay.php
index 707539020..d97a70ecd 100644
--- a/src/Model/Walpay.php
+++ b/src/Model/Walpay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Walpay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Walpay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): WalpayCredentials
diff --git a/src/Model/WalpayCredentials.php b/src/Model/WalpayCredentials.php
index 2fa4f2fd5..e4bc6752b 100644
--- a/src/Model/WalpayCredentials.php
+++ b/src/Model/WalpayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WalpayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantName', $data)) {
$this->setMerchantName($data['merchantName']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantPin', $data)) {
$this->setMerchantPin($data['merchantPin']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantName(): string
diff --git a/src/Model/WebhookAuthorizationBasic.php b/src/Model/WebhookAuthorizationBasic.php
index 6bdb035e9..73c4be718 100644
--- a/src/Model/WebhookAuthorizationBasic.php
+++ b/src/Model/WebhookAuthorizationBasic.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class WebhookAuthorizationBasic implements WebhookAuthorization
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/WebhookAuthorizationDigest.php b/src/Model/WebhookAuthorizationDigest.php
index d42125169..affa79db3 100644
--- a/src/Model/WebhookAuthorizationDigest.php
+++ b/src/Model/WebhookAuthorizationDigest.php
@@ -14,11 +14,15 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class WebhookAuthorizationDigest implements WebhookAuthorization
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('username', $data)) {
$this->setUsername($data['username']);
@@ -26,11 +30,12 @@ public function __construct(array $data = [])
if (array_key_exists('password', $data)) {
$this->setPassword($data['password']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/WebhookAuthorizationFactory.php b/src/Model/WebhookAuthorizationFactory.php
index 8c6491074..08c65e66d 100644
--- a/src/Model/WebhookAuthorizationFactory.php
+++ b/src/Model/WebhookAuthorizationFactory.php
@@ -18,12 +18,12 @@
class WebhookAuthorizationFactory
{
- public static function from(array $data = []): WebhookAuthorization
+ public static function from(array $data = [], array $metadata = []): WebhookAuthorization
{
return match ($data['type']) {
- 'basic' => WebhookAuthorizationBasic::from($data),
- 'digest' => WebhookAuthorizationDigest::from($data),
- 'none' => WebhookAuthorizationNone::from($data),
+ 'basic' => WebhookAuthorizationBasic::from($data, $metadata),
+ 'digest' => WebhookAuthorizationDigest::from($data, $metadata),
+ 'none' => WebhookAuthorizationNone::from($data, $metadata),
default => throw new UnknownDiscriminatorValueException(),
};
}
diff --git a/src/Model/WebhookAuthorizationNone.php b/src/Model/WebhookAuthorizationNone.php
index 67b5f0135..89968351e 100644
--- a/src/Model/WebhookAuthorizationNone.php
+++ b/src/Model/WebhookAuthorizationNone.php
@@ -14,15 +14,20 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class WebhookAuthorizationNone implements WebhookAuthorization
{
- public function __construct(array $data = [])
+ use HasMetadata;
+
+ public function __construct(array $data = [], array $metadata = [])
{
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/WebhookCredential.php b/src/Model/WebhookCredential.php
index 626956cee..e4c6da636 100644
--- a/src/Model/WebhookCredential.php
+++ b/src/Model/WebhookCredential.php
@@ -16,9 +16,12 @@
use DateTimeImmutable;
use DateTimeInterface;
+use Rebilly\Sdk\Trait\HasMetadata;
class WebhookCredential implements ServiceCredential
{
+ use HasMetadata;
+
public const STATUS_ACTIVE = 'active';
public const STATUS_INACTIVE = 'inactive';
@@ -27,7 +30,7 @@ class WebhookCredential implements ServiceCredential
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -47,11 +50,12 @@ public function __construct(array $data = [])
if (array_key_exists('auth', $data)) {
$this->setAuth($data['auth']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getType(): string
diff --git a/src/Model/WebhookTracking.php b/src/Model/WebhookTracking.php
index 2be129807..0392eb885 100644
--- a/src/Model/WebhookTracking.php
+++ b/src/Model/WebhookTracking.php
@@ -17,9 +17,12 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WebhookTracking implements JsonSerializable
{
+ use HasMetadata;
+
public const EVENT_TYPE_AML_LIST_POSSIBLY_MATCHED = 'aml-list-possibly-matched';
public const EVENT_TYPE_APPLICATION_INSTANCE_DISABLED = 'application-instance-disabled';
@@ -262,7 +265,7 @@ class WebhookTracking implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -321,11 +324,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/Website.php b/src/Model/Website.php
index 708328b7f..947009ea5 100644
--- a/src/Model/Website.php
+++ b/src/Model/Website.php
@@ -17,12 +17,15 @@
use DateTimeImmutable;
use DateTimeInterface;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class Website implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('id', $data)) {
$this->setId($data['id']);
@@ -63,11 +66,12 @@ public function __construct(array $data = [])
if (array_key_exists('_links', $data)) {
$this->setLinks($data['_links']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getId(): ?string
diff --git a/src/Model/WebsiteSettings.php b/src/Model/WebsiteSettings.php
index ef18e55b4..ed04f4cf0 100644
--- a/src/Model/WebsiteSettings.php
+++ b/src/Model/WebsiteSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WebsiteSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('depositForm', $data)) {
$this->setDepositForm($data['depositForm']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('amplitude', $data)) {
$this->setAmplitude($data['amplitude']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDepositForm(): ?WebsiteSettingsDepositForm
diff --git a/src/Model/WebsiteSettingsAmplitude.php b/src/Model/WebsiteSettingsAmplitude.php
index d3b648a3a..8923a256c 100644
--- a/src/Model/WebsiteSettingsAmplitude.php
+++ b/src/Model/WebsiteSettingsAmplitude.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WebsiteSettingsAmplitude implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('tracking', $data)) {
$this->setTracking($data['tracking']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTracking(): ?bool
diff --git a/src/Model/WebsiteSettingsDepositForm.php b/src/Model/WebsiteSettingsDepositForm.php
index 654477349..2ea8ac6cd 100644
--- a/src/Model/WebsiteSettingsDepositForm.php
+++ b/src/Model/WebsiteSettingsDepositForm.php
@@ -15,21 +15,25 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WebsiteSettingsDepositForm implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('theme', $data)) {
$this->setTheme($data['theme']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getTheme(): ?WebsiteSettingsDepositFormTheme
diff --git a/src/Model/WebsiteSettingsDepositFormTheme.php b/src/Model/WebsiteSettingsDepositFormTheme.php
index a5ce7eab6..8b5b48cfa 100644
--- a/src/Model/WebsiteSettingsDepositFormTheme.php
+++ b/src/Model/WebsiteSettingsDepositFormTheme.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WebsiteSettingsDepositFormTheme implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('colorPrimary', $data)) {
$this->setColorPrimary($data['colorPrimary']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('buttonTemplate', $data)) {
$this->setButtonTemplate($data['buttonTemplate']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getColorPrimary(): ?string
diff --git a/src/Model/WebsiteSettingsPaymentForm.php b/src/Model/WebsiteSettingsPaymentForm.php
index 26189fd72..908b6de4b 100644
--- a/src/Model/WebsiteSettingsPaymentForm.php
+++ b/src/Model/WebsiteSettingsPaymentForm.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WebsiteSettingsPaymentForm implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('css', $data)) {
$this->setCss($data['css']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('features', $data)) {
$this->setFeatures($data['features']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCss(): ?string
diff --git a/src/Model/WebsiteSettingsPaymentFormFeatures.php b/src/Model/WebsiteSettingsPaymentFormFeatures.php
index bc53a5031..f8e472e3f 100644
--- a/src/Model/WebsiteSettingsPaymentFormFeatures.php
+++ b/src/Model/WebsiteSettingsPaymentFormFeatures.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WebsiteSettingsPaymentFormFeatures implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('showCoupons', $data)) {
$this->setShowCoupons($data['showCoupons']);
@@ -34,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('hideZeroAmountSummaryItems', $data)) {
$this->setHideZeroAmountSummaryItems($data['hideZeroAmountSummaryItems']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
/**
diff --git a/src/Model/WesternUnion.php b/src/Model/WesternUnion.php
index 29adc4864..fb7f881da 100644
--- a/src/Model/WesternUnion.php
+++ b/src/Model/WesternUnion.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class WesternUnion extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'WesternUnion',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): WesternUnionCredentials
diff --git a/src/Model/WesternUnionCredentials.php b/src/Model/WesternUnionCredentials.php
index 61d75e962..7727e1a17 100644
--- a/src/Model/WesternUnionCredentials.php
+++ b/src/Model/WesternUnionCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WesternUnionCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('clientId', $data)) {
$this->setClientId($data['clientId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('certificateSerialNumber', $data)) {
$this->setCertificateSerialNumber($data['certificateSerialNumber']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getClientId(): string
diff --git a/src/Model/Wirecard.php b/src/Model/Wirecard.php
index de7ca84aa..1c89631d4 100644
--- a/src/Model/Wirecard.php
+++ b/src/Model/Wirecard.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Wirecard extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Wirecard',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): WirecardCredentials
diff --git a/src/Model/WirecardCredentials.php b/src/Model/WirecardCredentials.php
index 31766d560..cac6cc477 100644
--- a/src/Model/WirecardCredentials.php
+++ b/src/Model/WirecardCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WirecardCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantUsername', $data)) {
$this->setMerchantUsername($data['merchantUsername']);
@@ -40,11 +43,12 @@ public function __construct(array $data = [])
if (array_key_exists('sftpPrivateKey', $data)) {
$this->setSftpPrivateKey($data['sftpPrivateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantUsername(): string
diff --git a/src/Model/WorldlineAtosFrankfurt.php b/src/Model/WorldlineAtosFrankfurt.php
index 0989513eb..b9f338bbd 100644
--- a/src/Model/WorldlineAtosFrankfurt.php
+++ b/src/Model/WorldlineAtosFrankfurt.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class WorldlineAtosFrankfurt extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'WorldlineAtosFrankfurt',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('threeDSecureServer', $data)) {
$this->setThreeDSecureServer($data['threeDSecureServer']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getThreeDSecureServer(): ?ThreeDSecureIO3dsServer
diff --git a/src/Model/WorldlineAtosFrankfurtCredentials.php b/src/Model/WorldlineAtosFrankfurtCredentials.php
index 7d96a51a5..e1007d062 100644
--- a/src/Model/WorldlineAtosFrankfurtCredentials.php
+++ b/src/Model/WorldlineAtosFrankfurtCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WorldlineAtosFrankfurtCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('cardAcceptorIdCode', $data)) {
$this->setCardAcceptorIdCode($data['cardAcceptorIdCode']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('privateKey', $data)) {
$this->setPrivateKey($data['privateKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCardAcceptorIdCode(): string
diff --git a/src/Model/WorldlineAtosFrankfurtSettings.php b/src/Model/WorldlineAtosFrankfurtSettings.php
index de7d5156a..612c956bd 100644
--- a/src/Model/WorldlineAtosFrankfurtSettings.php
+++ b/src/Model/WorldlineAtosFrankfurtSettings.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WorldlineAtosFrankfurtSettings implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('cardAcceptorName', $data)) {
$this->setCardAcceptorName($data['cardAcceptorName']);
@@ -37,11 +40,12 @@ public function __construct(array $data = [])
if (array_key_exists('useMtls', $data)) {
$this->setUseMtls($data['useMtls']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCardAcceptorName(): string
diff --git a/src/Model/Worldpay.php b/src/Model/Worldpay.php
index c4fd2133b..7b331f20e 100644
--- a/src/Model/Worldpay.php
+++ b/src/Model/Worldpay.php
@@ -14,15 +14,19 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Worldpay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Worldpay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
@@ -33,11 +37,12 @@ public function __construct(array $data = [])
if (array_key_exists('settings', $data)) {
$this->setSettings($data['settings']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): WorldpayCredentials
diff --git a/src/Model/WorldpayCredentials.php b/src/Model/WorldpayCredentials.php
index 53013c99e..7bf2c5851 100644
--- a/src/Model/WorldpayCredentials.php
+++ b/src/Model/WorldpayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WorldpayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantCode', $data)) {
$this->setMerchantCode($data['merchantCode']);
@@ -49,11 +52,12 @@ public function __construct(array $data = [])
if (array_key_exists('sftpKeyPassphrase', $data)) {
$this->setSftpKeyPassphrase($data['sftpKeyPassphrase']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantCode(): string
diff --git a/src/Model/WorldpaySettings.php b/src/Model/WorldpaySettings.php
index 96d4632a2..2b4e38d85 100644
--- a/src/Model/WorldpaySettings.php
+++ b/src/Model/WorldpaySettings.php
@@ -15,9 +15,12 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class WorldpaySettings implements JsonSerializable
{
+ use HasMetadata;
+
public const ENFORCE_STORED_CREDENTIALS_DISABLED = 'disabled';
public const ENFORCE_STORED_CREDENTIALS_MIT_ENABLED = 'mit-enabled';
@@ -42,7 +45,7 @@ class WorldpaySettings implements JsonSerializable
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('delay', $data)) {
$this->setDelay($data['delay']);
@@ -53,11 +56,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantInitiatedReason', $data)) {
$this->setMerchantInitiatedReason($data['merchantInitiatedReason']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getDelay(): ?int
diff --git a/src/Model/XPay.php b/src/Model/XPay.php
index 66c24eb2c..9d9757deb 100644
--- a/src/Model/XPay.php
+++ b/src/Model/XPay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class XPay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'XPay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): XPayCredentials
diff --git a/src/Model/XPayCredentials.php b/src/Model/XPayCredentials.php
index 0fc69d5c1..4ded1d9c9 100644
--- a/src/Model/XPayCredentials.php
+++ b/src/Model/XPayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class XPayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('encryptionKey', $data)) {
$this->setEncryptionKey($data['encryptionKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Zimpler.php b/src/Model/Zimpler.php
index 69ea83d20..7619539ee 100644
--- a/src/Model/Zimpler.php
+++ b/src/Model/Zimpler.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Zimpler extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Zimpler',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ZimplerCredentials
diff --git a/src/Model/ZimplerCredentials.php b/src/Model/ZimplerCredentials.php
index 771b0d553..d9eed5ad2 100644
--- a/src/Model/ZimplerCredentials.php
+++ b/src/Model/ZimplerCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ZimplerCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('merchantId', $data)) {
$this->setMerchantId($data['merchantId']);
@@ -28,11 +31,12 @@ public function __construct(array $data = [])
if (array_key_exists('apiKey', $data)) {
$this->setApiKey($data['apiKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getMerchantId(): string
diff --git a/src/Model/Zotapay.php b/src/Model/Zotapay.php
index 0cd61050d..5c864ec7d 100644
--- a/src/Model/Zotapay.php
+++ b/src/Model/Zotapay.php
@@ -14,24 +14,29 @@
namespace Rebilly\Sdk\Model;
+use Rebilly\Sdk\Trait\HasMetadata;
+
class Zotapay extends GatewayAccount
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
parent::__construct([
'gatewayName' => 'Zotapay',
- ] + $data);
+ ] + $data, $metadata);
if (array_key_exists('credentials', $data)) {
$this->setCredentials($data['credentials']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getCredentials(): ZotapayCredentials
diff --git a/src/Model/ZotapayCredentials.php b/src/Model/ZotapayCredentials.php
index 612c04390..4afc16b64 100644
--- a/src/Model/ZotapayCredentials.php
+++ b/src/Model/ZotapayCredentials.php
@@ -15,12 +15,15 @@
namespace Rebilly\Sdk\Model;
use JsonSerializable;
+use Rebilly\Sdk\Trait\HasMetadata;
class ZotapayCredentials implements JsonSerializable
{
+ use HasMetadata;
+
private array $fields = [];
- public function __construct(array $data = [])
+ public function __construct(array $data = [], array $metadata = [])
{
if (array_key_exists('endpointId', $data)) {
$this->setEndpointId($data['endpointId']);
@@ -31,11 +34,12 @@ public function __construct(array $data = [])
if (array_key_exists('merchantSecretKey', $data)) {
$this->setMerchantSecretKey($data['merchantSecretKey']);
}
+ $this->setMetadata($metadata);
}
- public static function from(array $data = []): self
+ public static function from(array $data = [], array $metadata = []): self
{
- return new self($data);
+ return new self($data, $metadata);
}
public function getEndpointId(): string
diff --git a/src/Service.php b/src/Service.php
index e7d94b438..0f450ebb1 100644
--- a/src/Service.php
+++ b/src/Service.php
@@ -160,6 +160,8 @@ class Service
private Api\PayoutRequestAllocationsApi $payoutRequestAllocations;
+ private Api\PayoutRequestBatchesApi $payoutRequestBatches;
+
private Api\ProfileApi $profile;
private Api\PreviewsApi $previews;
@@ -265,6 +267,7 @@ public function __construct(?Client $client = null, array $config = [])
$this->payoutRequests = new Api\PayoutRequestsApi($this->client);
$this->payoutRequestsV2 = new Api\PayoutRequestsV2Api($this->client);
$this->payoutRequestAllocations = new Api\PayoutRequestAllocationsApi($this->client);
+ $this->payoutRequestBatches = new Api\PayoutRequestBatchesApi($this->client);
$this->profile = new Api\ProfileApi($this->client);
$this->previews = new Api\PreviewsApi($this->client);
$this->roles = new Api\RolesApi($this->client);
@@ -638,6 +641,11 @@ public function payoutRequestAllocations(): Api\PayoutRequestAllocationsApi
return $this->payoutRequestAllocations;
}
+ public function payoutRequestBatches(): Api\PayoutRequestBatchesApi
+ {
+ return $this->payoutRequestBatches;
+ }
+
public function profile(): Api\ProfileApi
{
return $this->profile;
diff --git a/src/Trait/HasMetadata.php b/src/Trait/HasMetadata.php
new file mode 100644
index 000000000..4bcd37592
--- /dev/null
+++ b/src/Trait/HasMetadata.php
@@ -0,0 +1,55 @@
+metadata;
+ }
+
+ /**
+ * Get a header value from metadata.
+ *
+ * @param string $name
+ * @return null|array
+ */
+ public function getHeader(string $name): ?array
+ {
+ return $this->metadata['headers'][$name] ?? null;
+ }
+
+ /**
+ * Set the metadata array.
+ *
+ * @param array $metadata
+ * @return void
+ */
+ public function setMetadata(array $metadata): void
+ {
+ $this->metadata = $metadata;
+ }
+}