github.com/Ingenico-ePayments/connect-sdk-go@v0.0.0-20240318153750-1f8cd329b9c9/examples/merchant/riskassessments/RiskAssessmentCardsExample.go (about) 1 // This file was auto-generated from the API references found at 2 // https://epayments-api.developer-ingenico.com/ 3 4 package examples 5 6 import ( 7 "fmt" 8 9 "github.com/Ingenico-ePayments/connect-sdk-go/domain/definitions" 10 "github.com/Ingenico-ePayments/connect-sdk-go/domain/riskassessments" 11 ) 12 13 func riskAssessmentCardsExample() { 14 client, clientErr := getClient() 15 if clientErr != nil { 16 panic(clientErr) 17 } 18 defer client.Close() 19 20 // Assigning literals to pointer variables directly is not supported. 21 // The below code uses helper functions newBool, newInt32, newInt64 and newString to overcome this issue. 22 // http://stackoverflow.com/a/30716481 lists a few more alternatives. 23 // The code for these helper functions can be found in file Helper.go 24 25 var card definitions.Card 26 card.CardNumber = newString("4567350000427977") 27 card.Cvv = newString("123") 28 card.ExpiryDate = newString("1299") 29 30 var flightLegs []definitions.AirlineFlightLeg 31 32 var flightLeg1 definitions.AirlineFlightLeg 33 flightLeg1.AirlineClass = newString("1") 34 flightLeg1.ArrivalAirport = newString("AMS") 35 flightLeg1.CarrierCode = newString("KL") 36 flightLeg1.Date = newString("20150102") 37 flightLeg1.DepartureTime = newString("17:59") 38 flightLeg1.Fare = newString("fare") 39 flightLeg1.FareBasis = newString("INTERNET") 40 flightLeg1.FlightNumber = newString("791") 41 flightLeg1.Number = newInt32(1) 42 flightLeg1.OriginAirport = newString("BCN") 43 flightLeg1.StopoverCode = newString("non-permitted") 44 45 flightLegs = append(flightLegs, flightLeg1) 46 47 var flightLeg2 definitions.AirlineFlightLeg 48 flightLeg2.AirlineClass = newString("1") 49 flightLeg2.ArrivalAirport = newString("BCN") 50 flightLeg2.CarrierCode = newString("KL") 51 flightLeg2.Date = newString("20150102") 52 flightLeg2.DepartureTime = newString("23:59") 53 flightLeg2.Fare = newString("fare") 54 flightLeg2.FareBasis = newString("INTERNET") 55 flightLeg2.FlightNumber = newString("792") 56 flightLeg2.Number = newInt32(2) 57 flightLeg2.OriginAirport = newString("AMS") 58 flightLeg2.StopoverCode = newString("non-permitted") 59 60 flightLegs = append(flightLegs, flightLeg2) 61 62 var airlineData definitions.AirlineData 63 airlineData.AgentNumericCode = newString("123321") 64 airlineData.Code = newString("123") 65 airlineData.FlightDate = newString("20150102") 66 airlineData.FlightLegs = &flightLegs 67 airlineData.InvoiceNumber = newString("123456") 68 airlineData.IsETicket = newBool(true) 69 airlineData.IsRestrictedTicket = newBool(true) 70 airlineData.IsThirdParty = newBool(true) 71 airlineData.IssueDate = newString("20150101") 72 airlineData.MerchantCustomerID = newString("14") 73 airlineData.Name = newString("Air France KLM") 74 airlineData.PassengerName = newString("WECOYOTE") 75 airlineData.PlaceOfIssue = newString("Utah") 76 airlineData.PNR = newString("4JTGKT") 77 airlineData.PointOfSale = newString("IATA point of sale name") 78 airlineData.PosCityCode = newString("AMS") 79 airlineData.TicketDeliveryMethod = newString("e-ticket") 80 airlineData.TicketNumber = newString("KLM20050000") 81 82 var additionalInput definitions.AdditionalOrderInputAirlineData 83 additionalInput.AirlineData = &airlineData 84 85 var amountOfMoney definitions.AmountOfMoney 86 amountOfMoney.Amount = newInt64(100) 87 amountOfMoney.CurrencyCode = newString("EUR") 88 89 var billingAddress definitions.Address 90 billingAddress.CountryCode = newString("US") 91 92 var customer riskassessments.CustomerRiskAssessment 93 customer.AccountType = newString("existing") 94 customer.BillingAddress = &billingAddress 95 customer.Locale = newString("en_US") 96 97 var order riskassessments.OrderRiskAssessment 98 order.AdditionalInput = &additionalInput 99 order.AmountOfMoney = &amountOfMoney 100 order.Customer = &customer 101 102 var body riskassessments.RiskAssessmentCard 103 body.Card = &card 104 body.Order = &order 105 106 response, err := client.Merchant("merchantId").Riskassessments().Cards(body, nil) 107 108 fmt.Println(response, err) 109 }