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  }