Skip to content

Commit 3380752

Browse files
authored
Authorization Requests simulations (#426)
* createCardTransactionAuthorizationRequest * createCardPurchaseAuthorizationRequest * CreateAtmAuthorizationRequest * added internationalServiceFee to CreateCardPurchaseSimulation * added Simulation name convention * lint-fix
1 parent cef97fb commit 3380752

File tree

2 files changed

+78
-1
lines changed

2 files changed

+78
-1
lines changed

resources/simulations.ts

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { BaseResource } from "."
2-
import { CheckPayment, CreateCheckPaymentSimulation, UnitConfig, UnitResponse } from "../types"
2+
import { AtmAuthorizationRequest, CardTransactionAuthorizationRequest, CheckPayment, CreateAtmAuthorizationRequestSimulation,
3+
CreateCardPurchaseAuthorizationRequestSimulation, CreateCardTransactionAuthorizationRequestSimulation, CreateCheckPaymentSimulation, PurchaseAuthorizationRequest, UnitConfig, UnitResponse } from "../types"
34
import { AchReceivedPayment, Application, ApplicationDocument, AchPayment } from "../types"
45
import {
56
ApproveApplicationSimulation,
@@ -139,4 +140,37 @@ export class Simulations extends BaseResource {
139140
}
140141
)
141142
}
143+
144+
public async createCardTransactionAuthorizationRequest(
145+
request: CreateCardTransactionAuthorizationRequestSimulation
146+
): Promise<UnitResponse<CardTransactionAuthorizationRequest>> {
147+
return this.httpPost<UnitResponse<CardTransactionAuthorizationRequest>>(
148+
"authorization-requests/card-transaction",
149+
{
150+
data: request
151+
}
152+
)
153+
}
154+
155+
public async createCardPurchaseAuthorizationRequest(
156+
request: CreateCardPurchaseAuthorizationRequestSimulation
157+
): Promise<UnitResponse<PurchaseAuthorizationRequest>> {
158+
return this.httpPost<UnitResponse<PurchaseAuthorizationRequest>>(
159+
"authorization-requests/purchase",
160+
{
161+
data: request
162+
}
163+
)
164+
}
165+
166+
public async createAtmAuthorizationRequest(
167+
request: CreateAtmAuthorizationRequestSimulation
168+
): Promise<UnitResponse<AtmAuthorizationRequest>> {
169+
return this.httpPost<UnitResponse<AtmAuthorizationRequest>>(
170+
"authorization-requests/atm",
171+
{
172+
data: request
173+
}
174+
)
175+
}
142176
}

types/simulations.ts

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,4 +203,47 @@ export interface CreateCheckPaymentSimulation {
203203
relationships: {
204204
account: Relationship
205205
}
206+
}
207+
208+
export interface CreateCardTransactionAuthorizationRequestSimulation {
209+
type: "cardTransactionAuthorizationRequest"
210+
attributes: {
211+
amount: number
212+
merchantName: string
213+
merchantType: string
214+
merchantLocation?: string
215+
recurring?: boolean
216+
}
217+
relationships: {
218+
card: Relationship
219+
}
220+
}
221+
222+
export interface CreateCardPurchaseAuthorizationRequestSimulation{
223+
type: "purchaseAuthorizationRequest"
224+
attributes: {
225+
amount: number
226+
merchantName: string
227+
merchantType: string
228+
merchantLocation?: string
229+
merchantId?: string
230+
recurring?: boolean
231+
ecommerce?: boolean
232+
cardPresent?: boolean
233+
}
234+
relationships: {
235+
card: Relationship
236+
}
237+
}
238+
239+
export interface CreateAtmAuthorizationRequestSimulation {
240+
type: "atmAuthorizationRequest"
241+
attributes: {
242+
amount: number
243+
atmName: string
244+
atmLocation?: string
245+
}
246+
relationships: {
247+
card: Relationship
248+
}
206249
}

0 commit comments

Comments
 (0)