diff options
Diffstat (limited to 'midtrans.h')
-rw-r--r-- | midtrans.h | 24 |
1 files changed, 6 insertions, 18 deletions
@@ -6,23 +6,6 @@ struct midtrans_transaction { long gross_amount; }; -enum midtrans_payment { - MIDTRANS_CREDITCARD = 0, - MIDTRANS_BANKTRANSFER, - MIDTRANS_BCA_KLIKBCA, - MIDTRANS_BCA_KLIKPAY, - MIDTRANS_BRI_EPAY, - MIDTRANS_CIMB_CLICKS, - MIDTRANS_DANAMON_ONLINE, - MIDTRANS_UOB_EZPAY, - MIDTRANS_QRIS, - MIDTRANS_GOPAY, - MIDTRANS_SHOPEEPAY, - MIDTRANS_CSTORE, - MIDTRANS_AKULAKU, - MIDTRANS_KREDIVO -}; - struct midtrans_banktransfer { char *bank; char *va_number; @@ -30,13 +13,18 @@ struct midtrans_banktransfer { char *permata; }; +#define midtrans_charge(x, y, z) _Generic((x),\ + struct midtrans_banktransfer *:\ + midtrans_charge_banktransfer(x, y, z)\ + ) + #ifdef __cplusplus extern "C" { #endif void midtrans_init(const char *api_key, const char *cainfo); void midtrans_status(const char *order_id); -void midtrans_charge(enum midtrans_payment type, void *payment, +void midtrans_charge_banktransfer(struct midtrans_banktransfer *banktransfer, struct midtrans_transaction *transaction, char *custom_fields[]); void midtrans_cleanup(); |